ListBox.SelectedIndexCollection Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
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. |