Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
När du presenterar data i en Windows Forms-CheckedListBox kontroll kan du antingen iterera genom samlingen som lagras i egenskapen CheckedItems eller gå igenom listan med hjälp av metoden GetItemChecked för att avgöra vilka objekt som är markerade. Metoden GetItemChecked tar ett objektindexnummer som argument och returnerar true eller false. I motsats till vad du kan förvänta dig avgör inte egenskaperna SelectedItems och SelectedIndices vilka objekt som kontrolleras. de avgör vilka objekt som är markerade.
Så här fastställer du markerade objekt i en CheckListBox-kontroll
Iterera genom CheckedItems-samlingen, från och med 0 eftersom samlingen är nollbaserad. Observera att den här metoden ger dig objektnumret i listan över markerade objekt, inte den övergripande listan. Om det första objektet i listan inte är markerat och det andra objektet är markerat visas text som "Markerat objekt 1 = MyListItem2" i koden nedan.
' 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); }- eller-
Gå igenom Items-samlingen med början 0 eftersom samlingen är nollbaserad och anropa metoden GetItemChecked för varje objekt. Observera att den här metoden ger dig objektnumret i den övergripande listan, så om det första objektet i listan inte är markerat och det andra objektet är markerat visas något i stil med "Objekt 2 = MyListItem2".
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);
Se även
.NET Desktop feedback