Przed zaznaczyć ty na to pytanie jako duplikat lub zaproponować użyciu Items.IndexOf, wykonaj następujące czynności:Jak zdobyć indeksy wybranych elementów w polu listy WPF?
public MainWindow()
{
InitializeComponent();
var A = new object();
var B = new object();
var C = new object();
lbItems.Items.Add(A);
lbItems.Items.Add(B);
lbItems.Items.Add(C);
lbItems.Items.Add(A);
lbItems.Items.Add(B);
lbItems.Items.Add(C);
}
private void lbItems_MouseDoubleClick(object sender, MouseButtonEventArgs e)
{
MessageBox.Show(lbItems.Items.IndexOf(lbItems.SelectedItems[0]).ToString());
}
Następnie kliknij dwukrotnie czwarty element (dostaniesz 0 zamiast 3).
Jak uzyskać listę wybranych indeksów pozycji?
Po wielu zamieszanie, (które jestem pewny, że dzielisz się). Myślę, że to, co się dzieje, to uzyskanie pierwszego indeksu obiektu 'A', który wynosi 0. Można utworzyć pętlę, aby uzyskać wszystkie indeksy' A' – Sayse
@ Sayse: masz rację - 'ListBox' wykryje pierwszy indeks (również, jeśli klikniesz na czwarty element, często pierwszy i czwarty element będą podświetlane). Wysłałem do tego rozwiązanie na [to pytanie] (http://stackoverflow.com/questions/5469700/listview-selecting-single-item-wpf/5470094#5470094). –
@DanPuzey - Twoje rozwiązanie prawdopodobnie będzie również odpowiedzią na to pytanie. – Sayse