選択されている項目のインデックスるを取得するには、Items プロパティの IndexOf プロパティを使用します。
下記は、[選択されている項目のインデックスを取得]ボタンをクリックすると、選択されているすべての項目のインデックスを取得してメッセージボックスに表示する例です。
VBの例
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles Button1.Click
Dim selectedItemIndexes As String = String.Empty
'選択項目のインデックスを取得する
Dim indexes = From o In ListBox1.SelectedItems
Select ListBox1.Items.IndexOf(o).ToString() & vbCrLf
'取得したインデックスを1つの文字列にする
For Each index In indexes
selectedItemIndexes &= index
Next
MessageBox.Show(selectedItemIndexes)
End Sub
C#の例
private void button1_Click(object sender, RoutedEventArgs e)
{
string selectedItemsIndex = string.Empty;
// 選択項目のインデックスを取得する
var indexes = from o in listBox1.SelectedItems.Cast<listboxitem>()
select listBox1.Items.IndexOf(o).ToString() + "\n";
// 取得したインデックスを1つの文字列にする
foreach (string index in indexes)
selectedItemsIndex += index;
MessageBox.Show(selectedItemsIndex);
}
