Share via

ItemsControl.ItemContainerGenerator Property


Gets the ItemContainerGenerator that is associated with the control.

 property System::Windows::Controls::ItemContainerGenerator ^ ItemContainerGenerator { System::Windows::Controls::ItemContainerGenerator ^ get(); };
public System.Windows.Controls.ItemContainerGenerator ItemContainerGenerator { get; }
member this.ItemContainerGenerator : System.Windows.Controls.ItemContainerGenerator
Public ReadOnly Property ItemContainerGenerator As ItemContainerGenerator

Property Value

The ItemContainerGenerator that is associated with the control. The default is null.



An ItemContainerGenerator is responsible for generating the user interface (UI) for its host, such as an ItemsControl. It maintains the association between the items in the data view of the control and the corresponding UIElement objects. Every ItemsControl has an associated item container that contains a data item in the item collection. You can use the ItemContainerGenerator property to access the item container that is associated with your ItemsControl. For example, if you have a data-bound TreeView control 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. Alternatively, you can use the ItemContainerGenerator.IndexFromContainer or the ItemContainerGenerator.ItemFromContainer method to get the index or data item that is associated with a given generated container element.

The IItemContainerGenerator interface is also used in advanced scenarios. Typically, advanced applications that have their own implementation of a virtualizing panel call members of the interface.

Applies to

See also