ListBox.SelectedIndexCollection Clase

Definición

Representa la colección que contiene los índices de los elementos seleccionados en un ListBox.

public: ref class ListBox::SelectedIndexCollection : System::Collections::IList
public class ListBox.SelectedIndexCollection : System.Collections.IList
type ListBox.SelectedIndexCollection = class
    interface IList
    interface ICollection
    interface IEnumerable
Public Class ListBox.SelectedIndexCollection
Implements IList
Herencia
ListBox.SelectedIndexCollection
Implementaciones

Ejemplos

En el ejemplo siguiente se muestra cómo usar el FindString método para buscar todas las instancias del texto de búsqueda en los elementos de ListBox. En el FindString ejemplo se usa la versión del método que permite especificar un índice de búsqueda inicial desde el que realizar una búsqueda continua de todos los elementos de ListBox. En el ejemplo también se muestra cómo determinar cuándo comienza la búsqueda el FindString método desde la parte superior de la lista después de llegar a la parte inferior de la lista de elementos para evitar una búsqueda recursiva. Una vez que los elementos se encuentran en ListBox, se seleccionan mediante el SetSelected método .

private:
   void FindAllOfMyString( String^ searchString )
   {
      // Set the SelectionMode property of the ListBox to select multiple items.
      listBox1->SelectionMode = SelectionMode::MultiExtended;

      // Set our intial index variable to -1.
      int x = -1;

      // If the search string is empty exit.
      if ( searchString->Length != 0 )
      {
         // Loop through and find each item that matches the search string.
         do
         {
            // Retrieve the item based on the previous index found. Starts with -1 which searches start.
            x = listBox1->FindString( searchString, x );

            // If no item is found that matches exit.
            if ( x != -1 )
            {
               // Since the FindString loops infinitely, determine if we found first item again and exit.
               if ( listBox1->SelectedIndices->Count > 0 )
               {
                  if ( x == listBox1->SelectedIndices[ 0 ] )
                                    return;
               }

               // Select the item in the ListBox once it is found.
               listBox1->SetSelected( x, true );
            }
         }
         while ( x != -1 );
      }
   }
private void FindAllOfMyString(string searchString)
{
   // Set the SelectionMode property of the ListBox to select multiple items.
   listBox1.SelectionMode = SelectionMode.MultiExtended;
   
   // Set our intial index variable to -1.
   int x =-1;
   // If the search string is empty exit.
   if (searchString.Length != 0)
   {
      // Loop through and find each item that matches the search string.
      do
      {
         // Retrieve the item based on the previous index found. Starts with -1 which searches start.
         x = listBox1.FindString(searchString, x);
         // If no item is found that matches exit.
         if (x != -1)
         {
            // Since the FindString loops infinitely, determine if we found first item again and exit.
            if (listBox1.SelectedIndices.Count > 0)
            {
               if(x == listBox1.SelectedIndices[0])
                  return;
            }
            // Select the item in the ListBox once it is found.
            listBox1.SetSelected(x,true);
         }
      }while(x != -1);
   }
}
Private Sub FindAllOfMyString(ByVal searchString As String)
   ' Set the SelectionMode property of the ListBox to select multiple items.
   listBox1.SelectionMode = SelectionMode.MultiExtended

   ' Set our intial index variable to -1.
   Dim x As Integer = -1
   ' If the search string is empty exit.
   If searchString.Length <> 0 Then
      ' Loop through and find each item that matches the search string.
      Do
         ' Retrieve the item based on the previous index found. Starts with -1 which searches start.
         x = listBox1.FindString(searchString, x)
         ' If no item is found that matches exit.
         If x <> -1 Then
            ' Since the FindString loops infinitely, determine if we found first item again and exit.
            If ListBox1.SelectedIndices.Count > 0 Then
               If x = ListBox1.SelectedIndices(0) Then
                  Return
               End If
            End If
            ' Select the item in the ListBox once it is found.
            ListBox1.SetSelected(x, True)
         End If
      Loop While x <> -1
   End If
End Sub

Comentarios

La ListBox.SelectedIndexCollection clase almacena los índices en los elementos seleccionados en .ListBox Los índices almacenados en ListBox.SelectedIndexCollection son posiciones de índice dentro de la ListBox.ObjectCollection clase . La ListBox.ObjectCollection clase almacena todos los elementos mostrados en .ListBox

En la tabla siguiente se muestra un ejemplo de cómo ListBox.ObjectCollection almacena los elementos de , ListBox así como sus estados de selección dentro de un ejemplo ListBox.

Índice Elemento Estado de selección en listBox
0 object1 No seleccionado
1 object2 Seleccionado
2 object3 No seleccionado
3 object4 Seleccionado
4 object5 Seleccionado

En función del ListBox.ObjectCollection ejemplo de la tabla anterior, en la tabla siguiente se muestra cómo aparecería .ListBox.SelectedIndexCollection

Índice Índice del elemento seleccionado en ObjectCollection
0 1
1 3
2 4

Puede usar las propiedades y los métodos de esta clase para realizar diversas tareas con la colección. El Contains método permite determinar si una posición de índice de la ListBox.ObjectCollection clase es miembro de los índices seleccionados almacenados en .ListBox.SelectedIndexCollection Una vez que sepa que el elemento se encuentra dentro de la colección, puede usar el IndexOf método para determinar dónde se almacena una posición de índice específica dentro de para ListBox.ObjectCollectionListBox .

Constructores

ListBox.SelectedIndexCollection(ListBox)

Inicializa una nueva instancia de la clase ListBox.SelectedIndexCollection.

Propiedades

Count

Obtiene el número de elementos de la colección.

IsReadOnly

Obtiene un valor que indica si la colección es de solo lectura.

Item[Int32]

Obtiene el valor de índice en el índice especificado de esta colección.

Métodos

Add(Int32)

Agrega el control ListBox en la ubicación de índice especificada.

Clear()

Quita todos los controles de la colección.

Contains(Int32)

Determina si el índice especificado está ubicado en de la colección.

CopyTo(Array, Int32)

Copia toda la colección en una matriz existente, en un lugar especificado de la matriz.

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
GetEnumerator()

Devuelve un enumerador que se va a utilizar para recorrer en iteración la colección de índices seleccionados.

GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
IndexOf(Int32)

Devuelve el índice que se encuentra en la clase ListBox.SelectedIndexCollection del índice especificado de la clase ListBox.ObjectCollection del control ListBox.

MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
Remove(Int32)

Quita el control especificado de la colección.

ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Implementaciones de interfaz explícitas

ICollection.IsSynchronized

Para obtener una descripción de este miembro, vea IsSynchronized.

ICollection.SyncRoot

Para obtener una descripción de este miembro, vea SyncRoot.

IList.Add(Object)

Para obtener una descripción de este miembro, vea Add(Object).

IList.Clear()

Para obtener una descripción de este miembro, vea Clear().

IList.Contains(Object)

Para obtener una descripción de este miembro, vea Contains(Object).

IList.IndexOf(Object)

Para obtener una descripción de este miembro, vea IndexOf(Object).

IList.Insert(Int32, Object)

Para obtener una descripción de este miembro, vea Insert(Int32, Object).

IList.IsFixedSize

Para obtener una descripción de este miembro, vea IsFixedSize.

IList.Item[Int32]

Para obtener una descripción de este miembro, vea Item[Int32].

IList.Remove(Object)

Para obtener una descripción de este miembro, vea Remove(Object).

IList.RemoveAt(Int32)

Para obtener una descripción de este miembro, vea RemoveAt(Int32).

Métodos de extensión

Cast<TResult>(IEnumerable)

Convierte los elementos de IEnumerable en el tipo especificado.

OfType<TResult>(IEnumerable)

Filtra los elementos de IEnumerable en función de un tipo especificado.

AsParallel(IEnumerable)

Habilita la paralelización de una consulta.

AsQueryable(IEnumerable)

Convierte una interfaz IEnumerable en IQueryable.

Se aplica a