Freigeben über


CheckedListBox.CheckedIndexCollection-Klasse

Kapselt die Auflistung von Indizes markierter Elemente (einschließlich der Elemente in unbestimmtem Zustand) in einer CheckedListBox.

Namespace: System.Windows.Forms
Assembly: System.Windows.Forms (in system.windows.forms.dll)

Syntax

'Declaration
Public Class CheckedIndexCollection
    Implements IList, ICollection, IEnumerable
'Usage
Dim instance As CheckedIndexCollection
public class CheckedIndexCollection : IList, ICollection, IEnumerable
public ref class CheckedIndexCollection : IList, ICollection, IEnumerable
public class CheckedIndexCollection implements IList, ICollection, 
    IEnumerable
public class CheckedIndexCollection implements IList, ICollection, 
    IEnumerable

Hinweise

Die Auflistung von Indizes markierter Elemente ist eine Teilmenge der Indizes in der Auflistung aller Elemente im CheckedListBox-Steuerelement. Diese Indizes geben Elemente in aktiviertem oder unbestimmtem Zustand an.

Die folgende Tabelle enthält ein Beispiel für die indizierte Auflistung von Elementen im Steuerelement, d. h. sämtliche im Steuerelement enthaltenen Elemente.

Index

Element

Aktivierungszustand

0

Objekt 1

Unchecked

1

Objekt 2

Checked

2

Objekt 3

Unchecked

3

Objekt 4

Indeterminate

4

Objekt 5

Checked

Auf Grundlage des oben stehenden Beispiels veranschaulicht die folgende Tabelle die indizierte Auflistung von Indizes markierter Elemente.

Index

Index von Element

0

1

1

3

2

4

Die CheckedListBox-Klasse enthält zwei Member, mit denen Sie auf die gespeicherten Indizes zu greifen können, nämlich die Item-Eigenschaft und die IndexOf-Methode.

Auf Grundlage des oben stehenden Beispiels wird bei einem Aufruf der Item-Eigenschaft mit dem Parameterwert 1 der Wert 3 zurückgegeben. Bei einem Aufruf von IndexOf mit dem Parameter 3 wird der Wert 1 zurückgegeben.

Beispiel

Das folgende Beispiel listet die aktivierten Elemente in der CheckedListBox.CheckedIndexCollection auf, um den Aktivierungszustand der einzelnen Elemente anzuzeigen. Das Beispiel veranschaulicht die Verwendung der GetItemCheckState-Methode zum Festlegen des Aktivierungszustands eines Elements. Das Beispiel veranschaulicht auch die Verwendung der CheckedIndices-Eigenschaft zum Abrufen der CheckedListBox.CheckedIndexCollection und der CheckedItems-Eigenschaft zum Abrufen der CheckedListBox.CheckedItemCollection.

Die erste Schleife verwendet die GetItemCheckState-Methode zum Abrufen des CheckState der einzelnen Elemente unter Angabe des Index des Elements. Die zweite Schleife verwendet ebenfalls GetItemCheckState, allerdings wird die ListBox.ObjectCollection.IndexOf-Methode verwendet, um den Index des Elements abzurufen.

Private Sub WhatIsChecked_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles WhatIsChecked.Click
    ' Display in a message box all the items that are checked.
    Dim indexChecked As Integer
    Dim itemChecked As Object
    Const quote As String = """"

    ' First show the index and check state of all selected items.
    For Each indexChecked In CheckedListBox1.CheckedIndices
        ' The indexChecked variable contains the index of the item.
        MessageBox.Show("Index#: " + indexChecked.ToString() + ", is checked. Checked state is:" + _
                        CheckedListBox1.GetItemCheckState(indexChecked).ToString() + ".")
    Next

    ' Next show the object title and check state for each item selected.
    For Each itemChecked In CheckedListBox1.CheckedItems

        ' Use the IndexOf method to get the index of an item.
        MessageBox.Show("Item with title: " + quote + itemChecked.ToString() + quote + _
                        ", is checked. Checked state is: " + _
                        CheckedListBox1.GetItemCheckState(CheckedListBox1.Items.IndexOf(itemChecked)).ToString() + ".")
    Next

End Sub
private void WhatIsChecked_Click(object sender, System.EventArgs e) {
    // Display in a message box all the items that are checked.

    // First show the index and check state of all selected items.
    foreach(int indexChecked in checkedListBox1.CheckedIndices) {
        // The indexChecked variable contains the index of the item.
        MessageBox.Show("Index#: " + indexChecked.ToString() + ", is checked. Checked state is:" +
                        checkedListBox1.GetItemCheckState(indexChecked).ToString() + ".");
    }

    // Next show the object title and check state for each item selected.
    foreach(object itemChecked in checkedListBox1.CheckedItems) {

        // Use the IndexOf method to get the index of an item.
        MessageBox.Show("Item with title: \"" + itemChecked.ToString() + 
                        "\", is checked. Checked state is: " + 
                        checkedListBox1.GetItemCheckState(checkedListBox1.Items.IndexOf(itemChecked)).ToString() + ".");
    }

}
void WhatIsChecked_Click( Object^ /*sender*/, System::EventArgs^ /*e*/ )
{
   
   // Display in a message box all the items that are checked.
   // First show the index and check state of all selected items.
   IEnumerator^ myEnum1 = checkedListBox1->CheckedIndices->GetEnumerator();
   while ( myEnum1->MoveNext() )
   {
      Int32 indexChecked =  *safe_cast<Int32^>(myEnum1->Current);
      
      // The indexChecked variable contains the index of the item.
      MessageBox::Show( String::Concat( "Index#: ", indexChecked, ", is checked. Checked state is: ", checkedListBox1->GetItemCheckState( indexChecked ), "." ) );
   }

   
   // Next show the Object* title and check state for each item selected.
   IEnumerator^ myEnum2 = checkedListBox1->CheckedItems->GetEnumerator();
   while ( myEnum2->MoveNext() )
   {
      Object^ itemChecked = safe_cast<Object^>(myEnum2->Current);
      
      // Use the IndexOf method to get the index of an item.
      MessageBox::Show( String::Concat( "Item with title: \"", itemChecked, "\", is checked. Checked state is: ", checkedListBox1->GetItemCheckState( checkedListBox1->Items->IndexOf( itemChecked ) ), "." ) );
   }
}

private void whatIsChecked_Click(Object sender, System.EventArgs e)
{
    // Display in a message box all the items that are checked.
    // First show the index and check state of all selected items.
    IEnumerator objEnum = checkedListBox1.get_CheckedIndices().
        GetEnumerator();

    while (objEnum.MoveNext()) {
        int indexChecked = (int)(Int32)(objEnum.get_Current());

        // The indexChecked variable contains the index of the item.
        MessageBox.Show("Index#: " + (Int32)indexChecked 
            + ", is checked. Checked state is:" 
            + checkedListBox1.GetItemCheckState(indexChecked).ToString() 
            + ".");
    }

    // Next show the object title and check state for each item selected.
    for (int iCtr = 0; 
        iCtr < checkedListBox1.get_CheckedItems().get_Count(); 
        iCtr++) {
        Object itemChecked = 
            checkedListBox1.get_CheckedItems().get_Item(iCtr);

        // Use the IndexOf method to get the index of an item.
        MessageBox.Show("Item with title: \"" + itemChecked.ToString() 
            + "\", is checked. Checked state is: " 
            + checkedListBox1.GetItemCheckState(
            checkedListBox1.get_Items().IndexOf(itemChecked)).ToString() 
            + ".");
    }
} //whatIsChecked_Click

Vererbungshierarchie

System.Object
  System.Windows.Forms.CheckedListBox.CheckedIndexCollection

Threadsicherheit

Alle öffentlichen statischen (Shared in Visual Basic) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Plattformen

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

Siehe auch

Referenz

CheckedListBox.CheckedIndexCollection-Member
System.Windows.Forms-Namespace
CheckedListBox.CheckedIndices-Eigenschaft
CheckedListBox.CheckedItems-Eigenschaft
CheckedListBox.Items-Eigenschaft