Freigeben über


Gewusst wie: Abrufen eines ListBoxItem

Wenn Sie einen bestimmten ListBoxItem bei einem bestimmten Index in einem ListBox abrufen möchten, können Sie ItemContainerGenerator verwenden.

Beispiel

Im folgenden Beispiel werden ListBox und dessen Elemente dargestellt.

<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>

Das folgende Beispiel zeigt, wie Sie das Element abrufen, indem Sie den Index des Elements in der eigenschaft ContainerFromIndex des ItemContainerGeneratorangeben.

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()) + ".";
}
Private Sub GetIndex0(ByVal Sender As Object, ByVal e As RoutedEventArgs)

    Dim lbi As ListBoxItem = CType( _
        lb.ItemContainerGenerator.ContainerFromIndex(0), ListBoxItem)
    Item.Content = "The contents of the item at index 0 are: " + _
        (lbi.Content.ToString()) + "."
End Sub

Nachdem Sie das Listenfeldelement abgerufen haben, können Sie den Inhalt des Elements anzeigen, wie im folgenden Beispiel gezeigt.

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