ListBox.SelectedIndexCollection Klass

Definition

Representerar samlingen som innehåller indexen till de markerade objekten i en 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
Arv
ListBox.SelectedIndexCollection
Implementeringar

Exempel

I följande exempel visas hur du använder FindString metoden för att söka efter alla instanser av söktexten i objekten ListBoxi . I exemplet används den version av FindString metoden som gör att du kan ange ett startsökindex från vilket du kan göra en kontinuerlig sökning av alla objekt i ListBox. Exemplet visar också hur du avgör när FindString metoden börjar söka överst i listan när den når längst ned i listan med objekt för att förhindra en rekursiv sökning. När objekten hittas i väljs ListBoxde med hjälp av SetSelected metoden .

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

Kommentarer

Klassen ListBox.SelectedIndexCollection lagrar indexen till de markerade objekten ListBoxi . Indexen som lagras i ListBox.SelectedIndexCollection är indexpositioner inom ListBox.ObjectCollection klassen. Klassen ListBox.ObjectCollection lagrar alla objekt som visas i ListBox.

Följande tabell är ett exempel på hur ListBox.ObjectCollection objekten ListBox i samt deras urvalstillstånd lagras i ett exempel ListBox.

Index Objekt Markeringstillstånd i ListBox
0 object1 Inte valt
1 object2 Markerade
2 object3 Inte valt
3 object4 Markerade
4 object5 Markerade

Baserat på exemplet ListBox.ObjectCollection i föregående tabell visar följande tabell hur det ListBox.SelectedIndexCollection skulle se ut.

Index Index för markerat objekt i ObjectCollection
0 1
1 3
2 4

Du kan använda egenskaperna och metoderna för den här klassen för att utföra en mängd olika uppgifter med samlingen. Med Contains metoden kan du avgöra om en indexposition från ListBox.ObjectCollection klassen är medlem i de valda index som ListBox.SelectedIndexCollectionlagras i . När du vet att objektet finns i samlingen kan du använda IndexOf metoden för att avgöra var en specifik indexposition inom ListBox.ObjectCollection för ListBox lagras.

Konstruktorer

Name Description
ListBox.SelectedIndexCollection(ListBox)

Initierar en ny instans av ListBox.SelectedIndexCollection klassen.

Egenskaper

Name Description
Count

Hämtar antalet objekt i samlingen.

IsReadOnly

Hämtar ett värde som anger om samlingen är skrivskyddad.

Item[Int32]

Hämtar indexvärdet vid det angivna indexet i den här samlingen.

Metoder

Name Description
Add(Int32)

ListBox Lägger till på den angivna indexplatsen.

Clear()

Tar bort alla kontroller från samlingen.

Contains(Int32)

Avgör om det angivna indexet finns i samlingen.

CopyTo(Array, Int32)

Kopierar hela samlingen till en befintlig matris på en angiven plats i matrisen.

Equals(Object)

Avgör om det angivna objektet är lika med det aktuella objektet.

(Ärvd från Object)
GetEnumerator()

Returnerar en uppräkning som ska användas för att iterera genom den valda indexsamlingen.

GetHashCode()

Fungerar som standard-hash-funktion.

(Ärvd från Object)
GetType()

Hämtar den aktuella instansen Type .

(Ärvd från Object)
IndexOf(Int32)

Returnerar indexet i det ListBox.SelectedIndexCollection angivna indexet från ListBox.ObjectCollectionListBox.

MemberwiseClone()

Skapar en ytlig kopia av den aktuella Object.

(Ärvd från Object)
Remove(Int32)

Tar bort den angivna kontrollen från samlingen.

ToString()

Returnerar en sträng som representerar det aktuella objektet.

(Ärvd från Object)

Explicita gränssnittsimplementeringar

Name Description
ICollection.IsSynchronized

En beskrivning av den här medlemmen finns i IsSynchronized.

ICollection.SyncRoot

En beskrivning av den här medlemmen finns i SyncRoot.

IList.Add(Object)

En beskrivning av den här medlemmen finns i Add(Object).

IList.Clear()

En beskrivning av den här medlemmen finns i Clear().

IList.Contains(Object)

En beskrivning av den här medlemmen finns i Contains(Object).

IList.IndexOf(Object)

En beskrivning av den här medlemmen finns i IndexOf(Object).

IList.Insert(Int32, Object)

En beskrivning av den här medlemmen finns i Insert(Int32, Object).

IList.IsFixedSize

En beskrivning av den här medlemmen finns i IsFixedSize.

IList.Item[Int32]

En beskrivning av den här medlemmen finns i Item[Int32].

IList.Remove(Object)

En beskrivning av den här medlemmen finns i Remove(Object).

IList.RemoveAt(Int32)

En beskrivning av den här medlemmen finns i RemoveAt(Int32).

Tilläggsmetoder

Name Description
AsParallel(IEnumerable)

Möjliggör parallellisering av en fråga.

AsQueryable(IEnumerable)

Konverterar en IEnumerable till en IQueryable.

Cast<TResult>(IEnumerable)

Omvandlar elementen i en IEnumerable till den angivna typen.

OfType<TResult>(IEnumerable)

Filtrerar elementen i en IEnumerable baserat på en angiven typ.

Gäller för