ItemContainerGenerator Třída

Definice

Vygeneruje uživatelské rozhraní jménem svého hostitele, například ItemsControl.

public ref class ItemContainerGenerator sealed : System::Windows::Controls::Primitives::IRecyclingItemContainerGenerator, System::Windows::IWeakEventListener
public sealed class ItemContainerGenerator : System.Windows.Controls.Primitives.IRecyclingItemContainerGenerator, System.Windows.IWeakEventListener
type ItemContainerGenerator = class
    interface IRecyclingItemContainerGenerator
    interface IItemContainerGenerator
    interface IWeakEventListener
type ItemContainerGenerator = class
    interface IItemContainerGenerator
    interface IRecyclingItemContainerGenerator
    interface IWeakEventListener
Public NotInheritable Class ItemContainerGenerator
Implements IRecyclingItemContainerGenerator, IWeakEventListener
Dědičnost
ItemContainerGenerator
Implementuje

Poznámky

ItemContainerGenerator implementuje IItemContainerGenerator, což je rozhraní, které definuje typ, který:

  • Udržuje přidružení mezi zobrazením dat ovládacího prvku s více položkami, například ContainerFromElement a odpovídajícími UIElement položkami.

  • Generuje UIElement položky jménem ovládacího prvku s více položkami.

Každý ItemsControl typ má odpovídající typ kontejneru. Elementy kontejneru jsou objekty, které obsahují datové položky v kolekci položek. Například pro ListBoxjsou vygenerované kontejnery ListBoxItem ovládací prvky; pro ComboBox, jsou ComboBoxItem to ovládací prvky.

Objekt ItemsControl generuje své položky prostřednictvím IItemContainerGenerator rozhraní. Vlastnost ItemContainerGeneratorItemsControl je typu ItemContainerGenerator, který implementuje IItemContainerGenerator rozhraní. Proto můžete přistupovat k objektu přidruženému ItemContainerGenerator k vašemu ItemContainerGeneratorItemsControl pomocí vlastnosti . Pokud máte například objekt vázaný TreeViewna data a chcete získat TreeViewItem objekt na základě jeho indexu nebo přidružené položky dat, můžete použít metodu ItemContainerGenerator.ContainerFromIndexItemContainerGenerator.ContainerFromItem nebo . Alternativně můžete použít metodu ItemContainerGenerator.IndexFromContainerItemContainerGenerator.ItemFromContainer nebo k získání indexu nebo datové položky přidružené k danému vygenerovanému elementu kontejneru.

Kromě těchto použití se IItemContainerGenerator rozhraní používá v pokročilých scénářích. Obvykle pokročilé aplikace, které mají vlastní implementaci virtualizačního panelu, volají členy rozhraní.

Vlastnosti

Items

Získá kolekci položek, které patří k tomuto ItemContainerGenerator.

Status

Stav generování .ItemContainerGenerator

Metody

ContainerFromIndex(Int32)

Vrátí prvek odpovídající položce v daném indexu ItemCollectionv rámci .

ContainerFromItem(Object)

Vrátí odpovídající UIElement danou položku.

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GenerateBatches()

Vrátí objekt, který spravuje Status vlastnost.

GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetType()

Získá aktuální Type instanci.

(Zděděno od Object)
IndexFromContainer(DependencyObject)

Vrátí index položky, která odpovídá zadanému vygenerovanému objektu UIElement.

IndexFromContainer(DependencyObject, Boolean)

Vrátí index položky, která odpovídá zadanému vygenerovanému UIElementobjektu , případně rekurzivně prohledávající hierarchické položky.

ItemFromContainer(DependencyObject)

Vrátí položku, která odpovídá zadanému vygenerovanému objektu UIElement.

MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Událost

ItemsChanged

Událost ItemsChanged je vyvolána objektem, který ItemContainerGenerator informuje rozložení o změně kolekce položek.

StatusChanged

Událost StatusChanged je vyvolána za ItemContainerGenerator účelem informování ovládacích prvků o změně jejího stavu.

Explicitní implementace rozhraní

IItemContainerGenerator.GenerateNext()

Vrátí element kontejneru použitý k zobrazení další položky.

IItemContainerGenerator.GenerateNext(Boolean)

Vrátí element kontejneru použitý k zobrazení další položky a zda byl prvek kontejneru nově vygenerován (realizován).

IItemContainerGenerator.GeneratorPositionFromIndex(Int32)

Vrátí GeneratorPosition objektu, který se mapuje na položku v zadaném indexu.

IItemContainerGenerator.GetItemContainerGeneratorForPanel(Panel)

Vrátí ItemContainerGenerator vhodný pro použití v zadaném panelu.

IItemContainerGenerator.IndexFromGeneratorPosition(GeneratorPosition)

Vrátí index, který se mapuje na zadanou generatorPosition.

IItemContainerGenerator.PrepareItemContainer(DependencyObject)

Připraví zadaný prvek jako kontejner pro odpovídající položku.

IItemContainerGenerator.Remove(GeneratorPosition, Int32)

Tento člen podporuje infrastrukturu Windows Presentation Foundation (WPF) a není určen k použití přímo z vašeho kódu.

IItemContainerGenerator.RemoveAll()

Odebere všechny vygenerované (realizované) položky.

IItemContainerGenerator.StartAt(GeneratorPosition, GeneratorDirection)

Připraví generátor na generování položek, počínaje zadanou GeneratorPosition a v zadaném GeneratorDirection.

IItemContainerGenerator.StartAt(GeneratorPosition, GeneratorDirection, Boolean)

Připraví generátor na generování položek, počínaje zadanou GeneratorPosition a v zadaném GeneratorDirection, a řídí, zda se má začít od vygenerované (realizované) položky.

IRecyclingItemContainerGenerator.Recycle(GeneratorPosition, Int32)

Tento člen podporuje infrastrukturu Windows Presentation Foundation (WPF) a není určen k použití přímo z vašeho kódu.

IWeakEventListener.ReceiveWeakEvent(Type, Object, EventArgs)

Tento člen podporuje infrastrukturu Windows Presentation Foundation (WPF) a není určen k použití přímo z vašeho kódu.

Platí pro

Viz také