ListBox.SelectedIndexCollection Klas

Definitie

Vertegenwoordigt de verzameling die de indexen bevat voor de geselecteerde items in een 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
Overname
ListBox.SelectedIndexCollection
Implementeringen

Voorbeelden

In het volgende voorbeeld ziet u hoe u de FindString methode gebruikt om te zoeken naar alle exemplaren van de zoektekst in de items van de ListBox. In het voorbeeld wordt de versie van de FindString methode gebruikt waarmee u een beginzoekindex kunt opgeven waaruit u voortdurend alle items in het ListBoxbestand kunt doorzoeken. In het voorbeeld ziet u ook hoe u kunt bepalen wanneer de FindString methode begint met zoeken vanaf de bovenkant van de lijst nadat deze de onderkant van de lijst met items heeft bereikt om recursieve zoekopdrachten te voorkomen. Zodra items in de ListBoxitems zijn gevonden, worden ze geselecteerd met behulp van de SetSelected methode.

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

Opmerkingen

In ListBox.SelectedIndexCollection de klasse worden de indexen opgeslagen in de geselecteerde items in de ListBoxklasse. De indexen die zijn opgeslagen in de ListBox.SelectedIndexCollection klasse zijn indexposities ListBox.ObjectCollection . In ListBox.ObjectCollection de klasse worden alle items opgeslagen die in de ListBoxklasse worden weergegeven.

De volgende tabel is een voorbeeld van hoe de ListBox.ObjectCollection items van de ListBox items en de bijbehorende selectiestatussen in een voorbeeld ListBoxworden opgeslagen.

Index Onderdeel Selectiestatus in het keuzelijstvak
0 object1 Niet geselecteerd
1 object2 Geselecteerd
2 object3 Niet geselecteerd
3 object4 Geselecteerd
4 object5 Geselecteerd

Op basis van het ListBox.ObjectCollection voorbeeld in de vorige tabel ziet u in de volgende tabel hoe de ListBox.SelectedIndexCollection tabel wordt weergegeven.

Index Index van geselecteerd item in ObjectCollection
0 1
1 3
2 4

U kunt de eigenschappen en methoden van deze klasse gebruiken om verschillende taken uit te voeren met de verzameling. Met Contains de methode kunt u bepalen of een indexpositie van de ListBox.ObjectCollection klasse lid is van de geselecteerde indexen die zijn opgeslagen in de ListBox.SelectedIndexCollectionklasse. Zodra u weet dat het item zich in de verzameling bevindt, kunt u de IndexOf methode gebruiken om te bepalen waar een specifieke indexpositie binnen de ListBox.ObjectCollection voor de ListBox verzameling is opgeslagen.

Constructors

Name Description
ListBox.SelectedIndexCollection(ListBox)

Initialiseert een nieuw exemplaar van de ListBox.SelectedIndexCollection klasse.

Eigenschappen

Name Description
Count

Hiermee haalt u het aantal items in de verzameling op.

IsReadOnly

Hiermee wordt een waarde opgehaald die aangeeft of de verzameling het kenmerk Alleen-lezen heeft.

Item[Int32]

Hiermee haalt u de indexwaarde op bij de opgegeven index in deze verzameling.

Methoden

Name Description
Add(Int32)

Hiermee voegt u de ListBox op de opgegeven indexlocatie toe.

Clear()

Hiermee verwijdert u alle besturingselementen uit de verzameling.

Contains(Int32)

Bepaalt of de opgegeven index zich in de verzameling bevindt.

CopyTo(Array, Int32)

Hiermee kopieert u de hele verzameling naar een bestaande matrix op een opgegeven locatie in de matrix.

Equals(Object)

Bepaalt of het opgegeven object gelijk is aan het huidige object.

(Overgenomen van Object)
GetEnumerator()

Retourneert een enumerator die moet worden gebruikt om de geselecteerde indexenverzameling te doorlopen.

GetHashCode()

Fungeert als de standaardhashfunctie.

(Overgenomen van Object)
GetType()

Hiermee haalt u de Type huidige instantie op.

(Overgenomen van Object)
IndexOf(Int32)

Retourneert de index binnen de ListBox.SelectedIndexCollection opgegeven index van de ListBox.ObjectCollectionListBox.

MemberwiseClone()

Hiermee maakt u een ondiepe kopie van de huidige Object.

(Overgenomen van Object)
Remove(Int32)

Hiermee verwijdert u het opgegeven besturingselement uit de verzameling.

ToString()

Retourneert een tekenreeks die het huidige object vertegenwoordigt.

(Overgenomen van Object)

Expliciete interface-implementaties

Name Description
ICollection.IsSynchronized

Zie voor een beschrijving van dit lid IsSynchronized.

ICollection.SyncRoot

Zie voor een beschrijving van dit lid SyncRoot.

IList.Add(Object)

Zie voor een beschrijving van dit lid Add(Object).

IList.Clear()

Zie voor een beschrijving van dit lid Clear().

IList.Contains(Object)

Zie voor een beschrijving van dit lid Contains(Object).

IList.IndexOf(Object)

Zie voor een beschrijving van dit lid IndexOf(Object).

IList.Insert(Int32, Object)

Zie voor een beschrijving van dit lid Insert(Int32, Object).

IList.IsFixedSize

Zie voor een beschrijving van dit lid IsFixedSize.

IList.Item[Int32]

Zie voor een beschrijving van dit lid Item[Int32].

IList.Remove(Object)

Zie voor een beschrijving van dit lid Remove(Object).

IList.RemoveAt(Int32)

Zie voor een beschrijving van dit lid RemoveAt(Int32).

Extensiemethoden

Name Description
AsParallel(IEnumerable)

Hiermee schakelt u parallelle uitvoering van een query in.

AsQueryable(IEnumerable)

Converteert een IEnumerable naar een IQueryable.

Cast<TResult>(IEnumerable)

Cast de elementen van een IEnumerable naar het opgegeven type.

OfType<TResult>(IEnumerable)

Hiermee filtert u de elementen van een IEnumerable op basis van een opgegeven type.

Van toepassing op