ItemsControl.ItemContainerGenerator Property


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Gets the ItemContainerGenerator that is associated with the control.

Namespace:   System.Windows.Controls
Assembly:  PresentationFramework (in PresentationFramework.dll)

public ItemContainerGenerator ItemContainerGenerator { get; }

Property Value

Type: System.Windows.Controls.ItemContainerGenerator

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.

.NET Framework
Available since 3.0
Available since 3.0
Windows Phone Silverlight
Available since 7.0
Return to top