- Metti un DataKeyField al datalist (cioè un campo che identifica la riga, di solito "ID")
- Metti un ID alla checkbox (ad es. "cb")
- Al SelectedIndexChanged della dropdownlist:
VB:
codice:
Private Sub dropdownlist_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles dropdownlist.SelectedIndexChanged
Dim arraySelezionati As ArrayList
For Each DLI As DataListItem In dropdownlist.Items
Dim cb As CheckBox = DirectCast(DLI.FindControl("cb"), CheckBox)
If cb.Checked Then
arraySelezionati.Add(dropdownlist.DataKeys(DLI.ItemIndex))
End If
Next
For i As Integer = 0 To arraySelezionati.Count - 1
Response.Write("Hai selezionato la riga con ID: " & arraySelezionati(i))
Next
End Sub
C#
codice:
private void dropdownlist_SelectedIndexChanged(object sender, System.EventArgs e)
{
ArrayList arraySelezionati;
foreach (DataListItem DLI in dropdownlist.Items) {
CheckBox cb = (CheckBox)DLI.FindControl("cb");
if (cb.Checked) {
arraySelezionati.Add(dropdownlist.DataKeys(DLI.ItemIndex));
}
}
for (int i = 0; i <= arraySelezionati.Count - 1; i++) {
Response.Write("Hai selezionato la riga con ID: " + arraySelezionati(i));
}
}
prova