Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

ItemsControl.ItemContainerGenerator Property

Gets the ItemContainerGenerator that is associated with this control.

Namespace: System.Windows.Controls
Assembly: PresentationFramework (in presentationframework.dll)
XML Namespace:  http://schemas.microsoft.com/winfx/2006/xaml/presentation

[BindableAttribute(false)] 
public ItemContainerGenerator ItemContainerGenerator { get; }
/** @property */
public ItemContainerGenerator get_ItemContainerGenerator ()

public function get ItemContainerGenerator () : ItemContainerGenerator

You cannot use this property in XAML.

Property Value

The ItemContainerGenerator that is associated with this control. The default value is a null reference (Nothing in Visual Basic).

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.

If you need to get a specific ListBoxItem at a particular index in a ListBox you can use ItemContainerGenerator. The following example shows the ListBox and its items.

<ListBox Margin="10,0,0,5" Name="lb" VerticalAlignment="Top" Grid.Column="0" Grid.Row="2">
    <ListBoxItem>Item 0</ListBoxItem>
    <ListBoxItem>Item 1</ListBoxItem>
    <ListBoxItem>Item 2</ListBoxItem>
    <ListBoxItem>Item 3</ListBoxItem>
</ListBox>

This example shows how to retrieve the item by specifying the index of the item in the ContainerFromIndex property.

private void GetIndex0(object sender, RoutedEventArgs e)
{
  ListBoxItem lbi = (ListBoxItem)
      (lb.ItemContainerGenerator.ContainerFromIndex(0));
  Item.Content = "The contents of the item at index 0 are: " +
      (lbi.Content.ToString()) + ".";
}

Once you have retrieved the list box item you can do things such as display the contents of the item as shown in this example.

Item.Content = "The contents of the item at index 0 are: " +
    (lbi.Content.ToString()) + ".";

For the complete sample see Get ListBoxItem with Index Sample.

Windows 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

.NET Framework

Supported in: 3.0

Community Additions

Show:
© 2014 Microsoft