ItemContainerGenerator-Klasse
Assembly: PresentationFramework (in presentationframework.dll)
XML-Namespaces: http://schemas.microsoft.com/winfx/2006/xaml/presentation
ItemContainerGenerator implements IItemContainerGenerator, which is the interface that defines a type which:
-
Maintains an association between the data view of a multiple-item control, such as ContainerFromElement and the corresponding UIElement items.
-
Generates UIElement items on behalf of a multiple-item control.
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.
For the complete sample see Get ListBoxItem with Index Sample.