Comment : déterminer des éléments cochés dans le contrôle CheckedListBox Windows Forms
Lorsque vous présentez des données dans un contrôle CheckedListBox Windows Forms, vous pouvez itérer au sein de la collection stockée dans la propriété CheckedItems ou vous déplacer dans la liste à l'aide de la méthode GetItemChecked pour déterminer quels éléments sont cochés. La méthode GetItemChecked accepte comme argument le numéro d'index d'un élément et retourne la valeur true ou false. Contrairement à ce que pouvez attendre, les propriétés SelectedItems et SelectedIndices ne déterminent pas les éléments qui sont cochés, mais ceux qui sont en surbrillance.
Pour déterminer les éléments cochés dans un contrôle CheckedListBox, procédez comme suit :
Itérez au sein de la collection CheckedItems, en commençant par 0, car il s'agit d'une collection de base zéro. Notez que cette méthode fournit le numéro que porte l'élément dans la liste des éléments cochés, et non dans la liste globale. Par conséquent, si le premier élément de la liste n'est pas coché alors que le deuxième l'est, le code ci-dessous affiche une chaîne du type "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 -
Avancez pas à pas dans la collection Items, en commençant par 0, car il s'agit d'une collection de base zéro, puis appelez la méthode GetItemChecked pour chaque élément. Remarquez que cette méthode fournit le numéro de l'élément dans la liste globale ; par conséquent, si le premier élément de la liste n'est pas coché alors que le deuxième l'est, elle affiche une chaîne semblable à ceci : "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);
Voir aussi
Autres ressources
Contrôles Windows Forms utilisés pour l'affichage de listes d'options