7. 選択されている項目を取得する
選択されている項目を取得するにはSelectedItemsプロパティを参照します。SelectedItemsプロパティには、選択された順番に項目が格納されています。
下記は[選択項目を取得する]ボタンがクリックされたときに、選択状態になっている項目をメッセージボックスに表示する例です。

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

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
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);
}
選択されている項目のインデックスを取得するにはIndexOfプロパティを使用する。
