Condividi tramite


ListBox.SelectedIndex Proprietà

Definizione

Ottiene o imposta l'indice in base zero dell'elemento correntemente selezionato in un controllo 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

Valore della proprietà

Indice in base zero dell'elemento attualmente selezionato. Se non è stato selezionato alcun elemento, verrà restituito il valore uno negativo (-1).

Attributi

Eccezioni

Il valore assegnato è minore di -1 oppure maggiore o uguale al conteggio degli elementi.

La proprietà SelectionMode è impostata su None.

Esempio

Nell'esempio di codice seguente viene illustrato come utilizzare la proprietà con la SelectedIndexTopIndex proprietà per spostare l'elemento attualmente selezionato all'inizio dell'elenco di elementi nell'area di visualizzazione di ListBox. Nell'esempio viene inoltre illustrato come rimuovere elementi usando il RemoveAt metodo della System.Windows.Forms.ListBox.ObjectCollection classe e come cancellare tutte le selezioni di elementi usando il ClearSelected metodo . Il codice sposta innanzitutto l'elemento attualmente selezionato nell'oggetto ListBox all'inizio dell'elenco. Il codice rimuove quindi tutti gli elementi prima dell'elemento attualmente selezionato e cancella tutte le selezioni nell'oggetto ListBox. In questo esempio è necessario aggiungere un ListBox elemento contenitore a una maschera e che un elemento è attualmente selezionato in 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

Commenti

Per uno standard ListBox, è possibile utilizzare questa proprietà per determinare l'indice dell'elemento selezionato in ListBox. Se la SelectionMode proprietà di ListBox è impostata su SelectionMode.MultiSimple o SelectionMode.MultiExtended (che indica una selezione ListBoxmultipla) e più elementi sono selezionati nell'elenco, questa proprietà può restituire l'indice a qualsiasi elemento selezionato.

Per recuperare una raccolta contenente gli indici di tutti gli elementi selezionati in una selezione ListBoxmultipla, utilizzare la SelectedIndices proprietà . Se si desidera ottenere l'elemento attualmente selezionato in ListBox, utilizzare la SelectedItem proprietà . Inoltre, è possibile utilizzare la SelectedItems proprietà per ottenere tutti gli elementi selezionati in una selezione ListBoxmultipla.

Si applica a

Vedi anche