Per la presentazione di dati in un controllo CheckedListBox di Windows Form è possibile scorrere l’insieme memorizzato nella proprietà CheckedItems o esaminare l’elenco utilizzando il metodo GetItemChecked per rilevare gli elementi selezionati. Il metodo GetItemChecked accetta il numero di indice di un elemento come argomento e restituisce true o false. Le proprietà SelectedItems e SelectedIndices, contrariamente a quanto si potrebbe pensare, non rilevano gli elementi selezionati, ma quelli evidenziati.
Quindi per rilevare gli elementi selezionati in un controllo CheckedListBox :

  1. Scorrere l’insieme CheckedItems partendo da 0, trattandosi di un insieme a base zero. Si noti che il metodo fornirà il numero dell’elemento nell’elenco degli elementi selezionati, non nell’intero elenco. Di conseguenza, se il primo elemento dell’elenco non è selezionato e il secondo sì, nel codice che segue verrà visualizzato un testo analogo a “Checked Item 1 = MyListItem2″.
// Determina se ci sono elementi spuntati.
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);
}

- oppure -

  1. Scorrere l’insieme Items partendo da 0, trattandosi di un insieme a base zero, e chiamare il metodo GetItemChecked per ogni elemento. Tenere presente che questo metodo fornirà il numero dell’elemento nell’intero elenco. Di conseguenza, se il primo elemento dell’elenco non è selezionato e il secondo sì, verrà visualizzato un testo analogo a “Item 2 = MyListItem2″.
int i;
strings;
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);

last [C#] Determinare elementi spuntati in un controllo CheckedListBox