ListBox.SelectedIndex プロパティ

定義

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; }
[<System.ComponentModel.Bindable(true)>]
[<System.ComponentModel.Browsable(false)>]
member this.SelectedIndex : int with get, set
Public Overrides Property SelectedIndex As Integer

プロパティ値

Int32

現在選択されている項目の 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 を含むアイテムがフォームに追加されていること、およびでアイテムが現在選択されていることが必要です ListBoxThis 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のプロパティ ListBox がまたは (複数選択を示す) のいずれかに設定され SelectionMode.MultiSimple ていて、 SelectionMode.MultiExtended 一覧で複数の項目が選択されている場合 ListBox 、このプロパティは選択された任意の項目に対してインデックスを返すことができます。If 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.

適用対象

こちらもご覧ください