Como: Determinar itens marcados no controle CheckedListBox do Windows Forms
Ao apresentar os dados em um Windows Forms CheckedListBox controle, você pode tanto iterar por meio da coleção armazenada na CheckedItems propriedade ou percorra a lista usando o GetItemChecked método para determinar quais itens estão checados. O GetItemChecked método usa um número de índice do item como seu argumento e retorna true ou false. Contrária às quais você pode esperar, o SelectedItems e SelectedIndices Propriedades não determinam quais itens estão marcados; Elas determinam quais itens são realçados.
Para determinar os itens selecionados em um controle CheckedListBox
Iterar por meio de CheckedItems coleção, começando em 0, pois a coleção é baseada em zero. Observe que esse método lhe dará o número do item na lista de itens marcados, não na lista geral. Portanto, se o primeiro item na lista não estiver marcado e o segundo item é verificado, o código a seguir exibirá o texto como "Checked Item 1 = MyListItem2".
' 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 - 1 ; 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.get_CheckedItems().get_Count() != 0 ) { // If so, loop through all checked items and print results. System.String s = ""; for(int x=0;x <= checkedListBox1.get_CheckedItems().get_Count() - 1;x++) { s = s + "Checked Item " + Convert.ToString(++x) + " = " + checkedListBox1.get_CheckedItems().get_Item(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 - 1; x++) { s = String::Concat(s, "Checked Item ", (x+1).ToString(), " = ", checkedListBox1->CheckedItems[x]->ToString(), "\n"); } MessageBox::Show(s); }
- ou -
Percorra a Items coleção, começando em 0, pois a coleção é baseada em zero e a chamada a GetItemChecked método para cada item. Observe que esse método lhe fornecerá o número do item na lista geral, portanto, se o primeiro item na lista não estiver marcada e o segundo item é verificado, ele exibirá algo como "Item 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; System.String s; s = "Checked items:\n"; for(i = 0;i <= checkedListBox1.get_Items().get_Count() - 1;i ++) { if ( checkedListBox1.GetItemChecked(i) ) { s = s + "Item " + Convert.ToString(++i) + " = " + checkedListBox1.get_Item(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);