ListBox.SelectedIndex Propiedad

Definición

Obtiene o establece el índice de base cero del elemento actualmente seleccionado en 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

Valor de propiedad

Índice de base cero del elemento actualmente seleccionado. Si no hay ningún elemento seleccionado, se devuelve el valor uno negativo (-1).

Atributos

Excepciones

El valor asignado es menor que -1 o mayor que o igual al número de elementos.

La propiedad SelectionMode se establece en None.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar la SelectedIndex propiedad con la TopIndex propiedad para mover el elemento seleccionado actualmente a la parte superior de la lista de elementos del área de presentación de ListBox. En el ejemplo se muestra aún más cómo quitar elementos mediante el RemoveAt método de la System.Windows.Forms.ListBox.ObjectCollection clase y cómo borrar toda la selección de elementos mediante el ClearSelected método . El código mueve primero el elemento seleccionado actualmente en ListBox la parte superior de la lista. A continuación, el código quita todos los elementos antes del elemento seleccionado actualmente y borra todas las selecciones de ListBox. En este ejemplo se requiere que se agregue un ListBox elemento contenedor a un formulario y que un elemento esté seleccionado actualmente en .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

Comentarios

Para un estándar ListBox, puede usar esta propiedad para determinar el índice del elemento seleccionado en .ListBox Si la SelectionMode propiedad de ListBox se establece SelectionMode.MultiSimple en o SelectionMode.MultiExtended (que indica una selección ListBoxmúltiple ) y se seleccionan varios elementos en la lista, esta propiedad puede devolver el índice a cualquier elemento seleccionado.

Para recuperar una colección que contiene los índices de todos los elementos seleccionados en una selección ListBoxmúltiple, utilice la SelectedIndices propiedad . Si desea obtener el elemento seleccionado actualmente en ListBox, use la SelectedItem propiedad . Además, puede usar la SelectedItems propiedad para obtener todos los elementos seleccionados en una selección ListBoxmúltiple.

Se aplica a

Consulte también