ItemContainerGenerator Класс

Определение

Создает пользовательский интерфейс от имени своего узла, например ItemsControl.Generates the user interface (UI) on behalf of its host, such as an 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
Public NotInheritable Class ItemContainerGenerator
Implements IRecyclingItemContainerGenerator, IWeakEventListener
Наследование
ItemContainerGenerator
Реализации

Комментарии

ItemContainerGenerator реализует IItemContainerGenerator, который представляет собой интерфейс, определяющий тип, который:ItemContainerGenerator implements IItemContainerGenerator, which is the interface that defines a type which:

  • Поддерживает связь между представлением данных элемента управления с несколькими элементами, например ContainerFromElement и соответствующими элементами UIElement.Maintains an association between the data view of a multiple-item control, such as ContainerFromElement and the corresponding UIElement items.

  • Создает UIElement элементов от имени элемента управления с несколькими элементами.Generates UIElement items on behalf of a multiple-item control.

Каждый тип ItemsControl имеет соответствующий тип контейнера.Each ItemsControl type has a corresponding container type. Элементы контейнера — это объекты, содержащие элементы данных в коллекции элементов.Container elements are the objects that contain the data items in the item collection. Например, для ListBoxсозданные контейнеры являются ListBoxItem элементами управления. для ComboBoxони являются ComboBoxItem элементами управления.For example, for ListBox, the generated containers are ListBoxItem controls; for ComboBox, they are ComboBoxItem controls.

ItemsControl создает свои элементы через интерфейс IItemContainerGenerator.The ItemsControl generates its items through the IItemContainerGenerator interface. Свойство ItemContainerGenerator ItemsControl имеет тип ItemContainerGenerator, который реализует интерфейс IItemContainerGenerator.The ItemContainerGenerator property of the ItemsControl is of type ItemContainerGenerator, which implements the IItemContainerGenerator interface. Таким образом, можно получить доступ к ItemContainerGenerator объекту, связанному с ItemsControl, используя свойство ItemContainerGenerator.Therefore, you can access the ItemContainerGenerator object associated with your ItemsControl using the ItemContainerGenerator property. Например, если имеется TreeViewс привязкой к данным и необходимо получить TreeViewItem на основе его индекса или связанного с ним элемента данных, можно использовать метод ItemContainerGenerator.ContainerFromIndex или ItemContainerGenerator.ContainerFromItem.For example, if you have a data-bound TreeView, and you want to get a TreeViewItem based on its index or its associated data item, you can use the ItemContainerGenerator.ContainerFromIndex or the ItemContainerGenerator.ContainerFromItem method. Кроме того, можно использовать метод ItemContainerGenerator.IndexFromContainer или ItemContainerGenerator.ItemFromContainer, чтобы получить индекс или элемент данных, связанный с заданным созданным элементом контейнера.Alternatively, you can use the ItemContainerGenerator.IndexFromContainer or the ItemContainerGenerator.ItemFromContainer method to get the index or data item associated with a given generated container element.

Помимо этих случаев, интерфейс IItemContainerGenerator используется в расширенных сценариях.Apart from those usages, the IItemContainerGenerator interface is used in advanced scenarios. Как правило, расширенные приложения с собственной реализацией панели виртуализации вызывают членов интерфейса.Typically, advanced applications that have their own implementation of a virtualizing panel call members of the interface.

Свойства

Items

Получает коллекцию элементов, принадлежащих данному объекту ItemContainerGenerator.Gets the collection of items that belong to this ItemContainerGenerator.

Status

Состояние генерации объекта ItemContainerGenerator.The generation status of the ItemContainerGenerator.

Методы

ContainerFromIndex(Int32)

Возвращает элемент, соответствующий элементу по указанному индексу в ItemCollection.Returns the element corresponding to the item at the given index within the ItemCollection.

ContainerFromItem(Object)

Возвращает объект UIElement, соответствующий заданному элементу.Returns the UIElement corresponding to the given item.

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.Determines whether the specified object is equal to the current object.

(Унаследовано от Object)
GenerateBatches()

Возвращает объект, управляющий свойством Status.Returns an object that manages the Status property.

GetHashCode()

Служит в качестве хэш-функции по умолчанию.Serves as the default hash function.

(Унаследовано от Object)
GetType()

Возвращает объект Type для текущего экземпляра.Gets the Type of the current instance.

(Унаследовано от Object)
IndexFromContainer(DependencyObject)

Возвращает индекс элемента, соответствующего указанному сгенерированному объекту UIElement.Returns the index to an item that corresponds to the specified, generated UIElement.

IndexFromContainer(DependencyObject, Boolean)

Возвращает индекс для элемента, соответствующего указанному сгенерированному объекту UIElement, при необходимости выполняя рекурсивны поиск элементов иерархии.Returns the index to an item that corresponds to the specified, generated UIElement, optionally recursively searching hierarchical items.

ItemFromContainer(DependencyObject)

Возвращает элемент, соответствующий указанному сгенерированному объекту UIElement.Returns the item that corresponds to the specified, generated UIElement.

MemberwiseClone()

Создает неполную копию текущего объекта Object.Creates a shallow copy of the current Object.

(Унаследовано от Object)
ToString()

Возвращает строку, представляющую текущий объект.Returns a string that represents the current object.

(Унаследовано от Object)

События

ItemsChanged

Событие ItemsChanged вызывается объектом ItemContainerGenerator для оповещения разметок об изменении коллекции элементов.The ItemsChanged event is raised by a ItemContainerGenerator to inform layouts that the items collection has changed.

StatusChanged

Событие StatusChanged вызывается объектом ItemContainerGenerator для оповещения элементов управления об изменении своего состояния.The StatusChanged event is raised by a ItemContainerGenerator to inform controls that its status has changed.

Явные реализации интерфейса

IItemContainerGenerator.GenerateNext()

Возвращает элемент-контейнер, используемый для отображения следующего элемента.Returns the container element used to display the next item.

IItemContainerGenerator.GenerateNext(Boolean)

Возвращает элемент-контейнер, используемый для отображения следующего элемента, и значение, показывающее, был ли этот контейнер только что сгенерирован (реализован).Returns the container element used to display the next item, and whether the container element has been newly generated (realized).

IItemContainerGenerator.GeneratorPositionFromIndex(Int32)

Возвращает объект GeneratorPosition, соответствующий элементу с указанным индексом.Returns the GeneratorPosition object that maps to the item at the specified index.

IItemContainerGenerator.GetItemContainerGeneratorForPanel(Panel)

Возвращает объект ItemContainerGenerator, предназначенный для использования на указанной панели.Returns the ItemContainerGenerator appropriate for use by the specified panel.

IItemContainerGenerator.IndexFromGeneratorPosition(GeneratorPosition)

Возвращает индекс, соответствующий указанному объекту GeneratorPosition.Returns the index that maps to the specified GeneratorPosition.

IItemContainerGenerator.PrepareItemContainer(DependencyObject)

Подготавливает указанный объект для использования в качестве контейнера соответствующего элемента.Prepares the specified element as the container for the corresponding item.

IItemContainerGenerator.Remove(GeneratorPosition, Int32)

Этот член поддерживает инфраструктуру Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF) и не предназначен для непосредственного использования из кода.This member supports the Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF) infrastructure and is not intended to be used directly from your code.

IItemContainerGenerator.RemoveAll()

Удаляет все сгенерированные (реализованные) элементы.Removes all generated (realized) items.

IItemContainerGenerator.StartAt(GeneratorPosition, GeneratorDirection)

Подготавливает генератор к созданию элементов, начиная с указанной позиции GeneratorPosition в заданном направлении GeneratorDirection.Prepares the generator to generate items, starting at the specified GeneratorPosition, and in the specified GeneratorDirection.

IItemContainerGenerator.StartAt(GeneratorPosition, GeneratorDirection, Boolean)

Подготавливает генератор к созданию элементов, начиная с указанной позиции GeneratorPosition в заданном направлении GeneratorDirection и с учетом заданного условия, определяющего, следует ли начинать с уже сгенерированного (реализованного) элемента.Prepares the generator to generate items, starting at the specified GeneratorPosition, and in the specified GeneratorDirection, and controlling whether or not to start at a generated (realized) item.

IRecyclingItemContainerGenerator.Recycle(GeneratorPosition, Int32)

Этот член поддерживает инфраструктуру Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF) и не предназначен для непосредственного использования из кода.This member supports the Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF) infrastructure and is not intended to be used directly from your code.

IWeakEventListener.ReceiveWeakEvent(Type, Object, EventArgs)

Этот член поддерживает инфраструктуру Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF) и не предназначен для непосредственного использования из кода.This member supports the Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF) infrastructure and is not intended to be used directly from your code.

Применяется к

Дополнительно