Freigeben über


So gehen Sie vor: Überprüfen Sie markierte Elemente im Windows Forms CheckedListBox-Steuerelement

Beim Darstellen von Daten in einem Windows Forms-CheckedListBox-Steuerelement können Sie entweder die in der CheckedItems-Eigenschaft gespeicherte Auflistung durchlaufen oder die Liste mithilfe der GetItemChecked-Methode iterieren, um festzustellen, welche Elemente markiert sind. Die GetItemChecked-Methode verwendet eine Elementindexnummer als Argument und gibt true oder falsezurück. Im Gegensatz zu den Erwartungen bestimmen die eigenschaften SelectedItems und SelectedIndices nicht, welche Elemente überprüft werden; sie bestimmen, welche Elemente hervorgehoben sind.

So bestimmen Sie überprüfte Elemente in einem CheckedListBox-Steuerelement

  1. Durchlaufen Sie die CheckedItems-Sammlung, beginnend bei 0, da die Sammlung nullbasiert ist. Beachten Sie, dass Sie mit dieser Methode die Elementnummer in der Liste der überprüften Elemente und nicht die Gesamtliste erhalten. Wenn also das erste Element in der Liste nicht überprüft und das zweite Element überprüft wird, zeigt der folgende Code Text wie "Checked Item 1 = MyListItem2" an.

    ' Determine if there are any items checked.  
    If CheckedListBox1.CheckedItems.Count <> 0 Then  
       ' If so, loop through all checked items and print results.  
       Dim x As Integer  
       Dim s As String = ""  
       For x = 0 To CheckedListBox1.CheckedItems.Count - 1  
          s = s & "Checked Item " & (x + 1).ToString & " = " & CheckedListBox1.CheckedItems(x).ToString & ControlChars.CrLf  
       Next x  
       MessageBox.Show(s)  
    End If  
    
    // Determine if there are any items checked.  
    if(checkedListBox1.CheckedItems.Count != 0)  
    {  
       // If so, loop through all checked items and print results.  
       string s = "";  
       for(int x = 0; x < checkedListBox1.CheckedItems.Count ; x++)  
       {  
          s = s + "Checked Item " + (x+1).ToString() + " = " + checkedListBox1.CheckedItems[x].ToString() + "\n";  
       }  
       MessageBox.Show(s);  
    }  
    
    // Determine if there are any items checked.  
    if(checkedListBox1->CheckedItems->Count != 0)  
    {  
       // If so, loop through all checked items and print results.  
       String ^ s = "";  
       for(int x = 0; x < checkedListBox1->CheckedItems->Count; x++)  
       {  
          s = String::Concat(s, "Checked Item ", (x+1).ToString(),  
             " = ", checkedListBox1->CheckedItems[x]->ToString(),  
             "\n");  
       }  
       MessageBox::Show(s);  
    }  
    
    • oder-
  2. Durchlaufen Sie die Items Auflistung, beginnend bei 0, da die Auflistung nullbasiert ist, und rufen Sie die GetItemChecked Methode für jedes Element auf. Beachten Sie, dass mit dieser Methode die Elementnummer in der Gesamtliste ermittelt wird. Wenn also das erste Element in der Liste nicht ausgewählt ist und das zweite Element ausgewählt ist, wird etwas wie "Element 2 = MyListItem2" angezeigt.

    Dim i As Integer  
    Dim s As String  
    s = "Checked Items:" & ControlChars.CrLf  
    For i = 0 To (CheckedListBox1.Items.Count - 1)  
       If CheckedListBox1.GetItemChecked(i) = True Then  
          s = s & "Item " & (i + 1).ToString & " = " & CheckedListBox1.Items(i).ToString & ControlChars.CrLf  
       End If  
    Next  
    MessageBox.Show(s)  
    
    int i;  
    string s;
    s = "Checked items:\n" ;  
    for (i = 0; i <= (checkedListBox1.Items.Count-1); i++)  
    {  
       if (checkedListBox1.GetItemChecked(i))  
       {  
          s = s + "Item " + (i+1).ToString() + " = " + checkedListBox1.Items[i].ToString() + "\n";  
       }  
    }  
    MessageBox.Show (s);  
    
    int i;  
    String ^ s;
    s = "Checked items:\n" ;  
    for (i = 0; i <= (checkedListBox1->Items->Count-1); i++)  
    {  
       if (checkedListBox1->GetItemChecked(i))  
       {  
          s = String::Concat(s, "Item ", (i+1).ToString(), " = ",  
             checkedListBox1->Item[i]->ToString(), "\n");  
       }  
    }  
    MessageBox::Show(s);  
    

Siehe auch