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; 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);