FGX.CollectionView.TfgItemWrapper: различия между версиями

Материал из FGX Native Докуметации
Перейти к навигации Перейти к поиску
(summary)
(summary)
 
(не показано 7 промежуточных версий этого же участника)
Строка 11: Строка 11:
  
 
<p>Обертка для доступа к контролам одного элемента коллекции. Обеспечивает вспомогательные методы для быстрого поиска вложенных контролов по имени <i>TfgControl.LookupName</i> с кешированием.</p>
 
<p>Обертка для доступа к контролам одного элемента коллекции. Обеспечивает вспомогательные методы для быстрого поиска вложенных контролов по имени <i>TfgControl.LookupName</i> с кешированием.</p>
 +
== Конструкторы ==
 +
 +
{| class="wikitable sortable"
 +
|-
 +
| <syntaxhighlight lang="Delphi">constructor</syntaxhighlight> || <code>Create(const AItem: [[FGX.CollectionView.TfgCollectionViewStyle|TfgCollectionViewStyle]]; const AData: [[FGX.CollectionView.IFGXItemDataAccessor|IFGXItemDataAccessor]])</code>
 +
<span style="color:gray">Описание отсутствует.</span>
 +
|}
 +
 +
== Методы ==
 +
 +
{| class="wikitable sortable"
 +
|-
 +
| <syntaxhighlight lang="Delphi">procedure</syntaxhighlight> || <code lang="Delphi">UpdateLookupNameIndex()</code>
 +
 +
<p>Обновляет индекс, используемый для быстрого доступа к компонентам стиля через <i>LookupName</i> .</p><div class="info"><i>TfgItemWrapper</i> формирует индекс только при создании, тем самым обеспечивая быструю работу метода <i>GetControlByLookupName</i> . Однако, кеш не обновляется автоматически при динамических изменениях структуры стиля при связывании данных. И в этом случае, если требуется, можно вызвать этот метод.</div>
 +
|-
 +
| <syntaxhighlight lang="Delphi">function</syntaxhighlight> || <code lang="Delphi">GetControlByLookupName(const ALookupName: [[string]]): [[T]]</code>
 +
 +
<p>Доступ к конкретному вложенному контролу элемента по имени <i>TfgControl.LookupName</i> с приведением к указанному классу <i>T</i> .</p><div class="info">Если контрола с указанным именем поиска нету, то вернет nil. Если элемент с указанным именем есть, но он не подходяшего класса, то так же вернет nil.</div>
 +
|-
 +
| <syntaxhighlight lang="Delphi">function</syntaxhighlight> || <code lang="Delphi">GetControlByName(const AName: [[string]]): [[T]]</code>
 +
 +
<p>Доступ к конкретному вложенному контролу элемента по имени <i>TfgControl.Name</i> с приведением к указанному классу <i>T</i> .</p><div class="info">Если контрола с указанным именем поиска нету, то вернет nil. Если элемент с указанным именем есть, но он не подходяшего класса, то так же вернет nil.</div>
 +
|}
 +
 +
== Свойства ==
 +
 +
{| class="wikitable sortable"
 +
|-
 +
| <syntaxhighlight lang="Delphi">property</syntaxhighlight> || <code>Index: [[Integer]]</code>
 +
 +
<p>Порядковый индекс элемента в списке.</p><div class="info">При удалении из списка элемента до текущего этот индекс поменяет свое значение. Если вам важно однозначно идентифицировать элемент в биндинге, то используйте свойство <i>Id</i> для задания уникального идентификатора элементу.</div>
 +
|-
 +
| <syntaxhighlight lang="Delphi">property</syntaxhighlight> || <code>Id: [[Int64]]</code>
 +
 +
<p>Уникальный идентификатор элемента. Используется для корректного выделения элемента, при изменении списка элементов (удалении, изменении или добавлении новых).</p><div class="info">По умолчанию совпадает с индексом. Если вы планируете обновлять список одновременно с работой выделения, то необходимо каждому элементу присвоить постоянный не изменяемый идентификатор через событие <i>TfgCollectionView.OnGetItemId</i></div>
 +
|-
 +
| <syntaxhighlight lang="Delphi">property</syntaxhighlight> || <code>StyleName: [[string]]</code>
 +
<p>Название использованного стиля элемента.</p>
 +
|-
 +
| <syntaxhighlight lang="Delphi">property</syntaxhighlight> || <code>Controls[const ALookupName]: [[FGX.Controls.TfgControl|TfgControl]]</code>
 +
 +
<p>Доступ к конкретному вложенному контролу элемента по имени <i>TfgControl.LookupName</i> и <i>TfgControl.Name</i> .</p><div class="info">Если контрола с указанным именем поиска нету, то вернет nil.</div>
 +
|-
 +
| <syntaxhighlight lang="Delphi">property</syntaxhighlight> || <code>Item: [[FGX.CollectionView.TfgCollectionViewStyle|TfgCollectionViewStyle]]</code>
 +
<p>Возвращает контрол, представляющий корень элемента коллекции.</p>
 +
|}

Текущая версия на 03:16, 6 декабря 2021

Delphi

TfgItemWrapper = class (TObject)

TObject -> TfgItemWrapper

Описание

Обертка для доступа к контролам одного элемента коллекции. Обеспечивает вспомогательные методы для быстрого поиска вложенных контролов по имени TfgControl.LookupName с кешированием.

Конструкторы

constructor
Create(const AItem: TfgCollectionViewStyle; const AData: IFGXItemDataAccessor)

Описание отсутствует.

Методы

procedure
UpdateLookupNameIndex()

Обновляет индекс, используемый для быстрого доступа к компонентам стиля через LookupName .

TfgItemWrapper формирует индекс только при создании, тем самым обеспечивая быструю работу метода GetControlByLookupName . Однако, кеш не обновляется автоматически при динамических изменениях структуры стиля при связывании данных. И в этом случае, если требуется, можно вызвать этот метод.
function
GetControlByLookupName(const ALookupName: string): T

Доступ к конкретному вложенному контролу элемента по имени TfgControl.LookupName с приведением к указанному классу T .

Если контрола с указанным именем поиска нету, то вернет nil. Если элемент с указанным именем есть, но он не подходяшего класса, то так же вернет nil.
function
GetControlByName(const AName: string): T

Доступ к конкретному вложенному контролу элемента по имени TfgControl.Name с приведением к указанному классу T .

Если контрола с указанным именем поиска нету, то вернет nil. Если элемент с указанным именем есть, но он не подходяшего класса, то так же вернет nil.

Свойства

property
Index: Integer

Порядковый индекс элемента в списке.

При удалении из списка элемента до текущего этот индекс поменяет свое значение. Если вам важно однозначно идентифицировать элемент в биндинге, то используйте свойство Id для задания уникального идентификатора элементу.
property
Id: Int64

Уникальный идентификатор элемента. Используется для корректного выделения элемента, при изменении списка элементов (удалении, изменении или добавлении новых).

По умолчанию совпадает с индексом. Если вы планируете обновлять список одновременно с работой выделения, то необходимо каждому элементу присвоить постоянный не изменяемый идентификатор через событие TfgCollectionView.OnGetItemId
property
StyleName: string

Название использованного стиля элемента.

property
Controls[const ALookupName]: TfgControl

Доступ к конкретному вложенному контролу элемента по имени TfgControl.LookupName и TfgControl.Name .

Если контрола с указанным именем поиска нету, то вернет nil.
property
Item: TfgCollectionViewStyle

Возвращает контрол, представляющий корень элемента коллекции.