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 false
zurü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
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-
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
.NET Desktop feedback