ListBox.SelectedIndex ListBox.SelectedIndex ListBox.SelectedIndex ListBox.SelectedIndex Property

定義

ListBox 内で現在選択されている項目の 0 から始まるインデックス番号を取得または設定します。Gets or sets the zero-based index of the currently selected item in a ListBox.

public:
 virtual property int SelectedIndex { int get(); void set(int value); };
[System.ComponentModel.Bindable(true)]
[System.ComponentModel.Browsable(false)]
public override int SelectedIndex { get; set; }
member this.SelectedIndex : int with get, set
Public Overrides Property SelectedIndex As Integer

プロパティ値

現在選択されている項目の 0 から始まるインデックス番号。A zero-based index of the currently selected item. 項目が選択されていない場合は、値 -1 が返されます。A value of negative one (-1) is returned if no item is selected.

例外

代入された値が -1 未満か、項目数以上です。The assigned value is less than -1 or greater than or equal to the item count.

SelectionMode プロパティが None に設定されている。The SelectionMode property is set to None.

プロパティをSelectedIndex TopIndexプロパティと共に使用して、 ListBox現在選択されている項目をの表示領域内の項目リストの先頭に移動する方法を次のコード例に示します。The following code example demonstrates how to use the SelectedIndex property with the TopIndex property to move the currently selected item to the top of the list of items in the display area of the ListBox. この例では、 RemoveAt System.Windows.Forms.ListBox.ObjectCollectionクラスのメソッドを使用して項目を削除する方法と、 ClearSelectedメソッドを使用してすべての項目選択をクリアする方法についてさらに説明します。The example further demonstrates how to remove items using the RemoveAt method of the System.Windows.Forms.ListBox.ObjectCollection class, and how to clear all item selection using the ClearSelected method. コードはまず、 ListBox内の現在選択されている項目をリストの先頭に移動します。The code first moves the currently selected item in the ListBox to the top of the list. 次に、現在選択されている項目の前にあるすべてのListBox項目を削除し、で選択した項目をすべてクリアします。The code then removes all items before the currently selected item and clears all selections in the ListBox. この例ListBox ListBoxでは、を含むアイテムがフォームに追加されていること、およびでアイテムが現在選択されていることが必要です。This example requires that a ListBox containing items is added to a form and that an item is currently selected in the ListBox.

private:
   void RemoveTopItems()
   {
      // Determine if the currently selected item in the ListBox 
      // is the item displayed at the top in the ListBox.
      if ( listBox1->TopIndex != listBox1->SelectedIndex )

      // Make the currently selected item the top item in the ListBox.
      listBox1->TopIndex = listBox1->SelectedIndex;

      // Remove all items before the top item in the ListBox.
      for ( int x = (listBox1->SelectedIndex - 1); x >= 0; x-- )
      {
         listBox1->Items->RemoveAt( x );
      }

      // Clear all selections in the ListBox.
      listBox1->ClearSelected();
   }
private void RemoveTopItems()
{
   // Determine if the currently selected item in the ListBox 
   // is the item displayed at the top in the ListBox.
   if (listBox1.TopIndex != listBox1.SelectedIndex)
      // Make the currently selected item the top item in the ListBox.
      listBox1.TopIndex = listBox1.SelectedIndex;

   // Remove all items before the top item in the ListBox.
   for (int x = (listBox1.SelectedIndex -1); x >= 0; x--)
   {
      listBox1.Items.RemoveAt(x);
   }

   // Clear all selections in the ListBox.
   listBox1.ClearSelected();
}
Private Sub RemoveTopItems()
   ' Determine if the currently selected item in the ListBox 
   ' is the item displayed at the top in the ListBox.
   If listBox1.TopIndex <> listBox1.SelectedIndex Then
      ' Make the currently selected item the top item in the ListBox.
      listBox1.TopIndex = listBox1.SelectedIndex
   End If
   ' Remove all items before the top item in the ListBox.
   Dim x As Integer
   For x = listBox1.SelectedIndex - 1 To 0 Step -1
      listBox1.Items.RemoveAt(x)
   Next x

   ' Clear all selections in the ListBox.
   listBox1.ClearSelected()
End Sub

注釈

標準ListBoxの場合は、このプロパティを使用して、 ListBoxで選択されている項目のインデックスを確認できます。For a standard ListBox, you can use this property to determine the index of the item that is selected in the ListBox. SelectionMode SelectionMode.MultiSimpleのプロパティがまたSelectionMode.MultiExtendedは (複数選択ListBoxを示す) のいずれかに設定されていて、一覧で複数の項目が選択されている場合、このプロパティは選択された任意の項目に対してインデックスを返すことができます。 ListBoxIf the SelectionMode property of the ListBox is set to either SelectionMode.MultiSimple or SelectionMode.MultiExtended (which indicates a multiple-selection ListBox) and multiple items are selected in the list, this property can return the index to any selected item.

複数選択ListBoxで選択されているすべての項目のインデックスを含むコレクションを取得するSelectedIndicesには、プロパティを使用します。To retrieve a collection containing the indexes of all selected items in a multiple-selection ListBox, use the SelectedIndices property. ListBox現在選択されている項目を取得する場合は、 SelectedItemプロパティを使用します。If you want to obtain the item that is currently selected in the ListBox, use the SelectedItem property. また、 SelectedItemsプロパティを使用して、複数選択ListBoxで選択されているすべての項目を取得することもできます。In addition, you can use the SelectedItems property to obtain all the selected items in a multiple-selection ListBox.

適用対象

こちらもご覧ください