Поделиться через


ItemContainerGenerator Класс

Определение

Создает пользовательский интерфейс от имени своего узла, например 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
Наследование
ItemContainerGenerator
Реализации

Комментарии

ItemContainerGenerator IItemContainerGeneratorреализует , который является интерфейсом, определяющим тип, который:

  • Поддерживает связь между представлением данных элемента управления с несколькими элементами, например ContainerFromElement , и соответствующими UIElement элементами.

  • Создает UIElement элементы от имени элемента управления с несколькими элементами.

Каждый ItemsControl тип имеет соответствующий тип контейнера. Элементы контейнера — это объекты, содержащие элементы данных в коллекции элементов. Например, для ListBoxсозданные контейнеры являются ListBoxItem элементами управления; для ComboBox— элементами ComboBoxItem управления.

Создает ItemsControl свои элементы через IItemContainerGenerator интерфейс . Свойство ItemContainerGeneratorItemsControl объекта имеет тип ItemContainerGenerator, который реализует IItemContainerGenerator интерфейс . Таким образом, вы можете получить доступ к объектуItemContainerGenerator, связанному ItemContainerGenerator с объектом ItemsControl , с помощью свойства . Например, если у вас есть привязанный TreeViewк данным объект и вы хотите получить TreeViewItem на основе его индекса или связанного ItemContainerGenerator.ContainerFromItem с ним элемента данных, можно использовать ItemContainerGenerator.ContainerFromIndex метод или . Кроме того, можно использовать ItemContainerGenerator.IndexFromContainer метод или для ItemContainerGenerator.ItemFromContainer получения индекса или элемента данных, связанного с заданным созданным элементом контейнера.

Помимо этих вариантов использования, IItemContainerGenerator интерфейс используется в сложных сценариях. Как правило, расширенные приложения, имеющие собственную реализацию виртуализирующей панели, вызывают члены интерфейса.

Свойства

Items

Получает коллекцию элементов, принадлежащих данному объекту ItemContainerGenerator.

Status

Состояние генерации объекта ItemContainerGenerator.

Методы

ContainerFromIndex(Int32)

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

ContainerFromItem(Object)

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

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

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

Возвращает объект, управляющий свойством Status.

GetHashCode()

Служит хэш-функцией по умолчанию.

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

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

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

Возвращает индекс элемента, соответствующего указанному сгенерированному объекту UIElement.

IndexFromContainer(DependencyObject, Boolean)

Возвращает индекс для элемента, соответствующего указанному сгенерированному объекту UIElement, при необходимости выполняя рекурсивны поиск элементов иерархии.

ItemFromContainer(DependencyObject)

Возвращает элемент, соответствующий указанному сгенерированному объекту UIElement.

MemberwiseClone()

Создает неполную копию текущего объекта Object.

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

Возвращает строку, представляющую текущий объект.

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

События

ItemsChanged

Событие ItemsChanged вызывается объектом ItemContainerGenerator для оповещения разметок об изменении коллекции элементов.

StatusChanged

Событие StatusChanged вызывается объектом ItemContainerGenerator для оповещения элементов управления об изменении своего состояния.

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

IItemContainerGenerator.GenerateNext()

Возвращает элемент-контейнер, используемый для отображения следующего элемента.

IItemContainerGenerator.GenerateNext(Boolean)

Возвращает элемент-контейнер, используемый для отображения следующего элемента, и значение, показывающее, был ли этот контейнер только что сгенерирован (реализован).

IItemContainerGenerator.GeneratorPositionFromIndex(Int32)

Возвращает объект GeneratorPosition, соответствующий элементу с указанным индексом.

IItemContainerGenerator.GetItemContainerGeneratorForPanel(Panel)

Возвращает объект ItemContainerGenerator, предназначенный для использования на указанной панели.

IItemContainerGenerator.IndexFromGeneratorPosition(GeneratorPosition)

Возвращает индекс, соответствующий указанному объекту GeneratorPosition.

IItemContainerGenerator.PrepareItemContainer(DependencyObject)

Подготавливает указанный объект для использования в качестве контейнера соответствующего элемента.

IItemContainerGenerator.Remove(GeneratorPosition, Int32)

Этот элемент поддерживает инфраструктуру Windows Presentation Foundation (WPF) и не предназначен для использования непосредственно из кода.

IItemContainerGenerator.RemoveAll()

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

IItemContainerGenerator.StartAt(GeneratorPosition, GeneratorDirection)

Подготавливает генератор к созданию элементов, начиная с указанной позиции GeneratorPosition в заданном направлении GeneratorDirection.

IItemContainerGenerator.StartAt(GeneratorPosition, GeneratorDirection, Boolean)

Подготавливает генератор к созданию элементов, начиная с указанной позиции GeneratorPosition в заданном направлении GeneratorDirection и с учетом заданного условия, определяющего, следует ли начинать с уже сгенерированного (реализованного) элемента.

IRecyclingItemContainerGenerator.Recycle(GeneratorPosition, Int32)

Этот элемент поддерживает инфраструктуру Windows Presentation Foundation (WPF) и не предназначен для использования непосредственно из кода.

IWeakEventListener.ReceiveWeakEvent(Type, Object, EventArgs)

Этот элемент поддерживает инфраструктуру Windows Presentation Foundation (WPF) и не предназначен для использования непосредственно из кода.

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

См. также раздел