Condividi tramite


Procedura: determinare la selezione nei controlli server Web elenco

Aggiornamento: novembre 2007

Le informazioni fornite in questo argomento sono valide per i controlli server Web ListBox, DropDownList, CheckBoxList e RadioButtonList.

Una delle operazioni eseguite con maggiore frequenza quando si utilizza un controllo server Web elenco consiste nel determinare quali elementi sono stati selezionati dall'utente. La procedura varia a seconda che il controllo elenco consenta la selezione singola o la selezione multipla.

Quando si utilizza il controllo DropDownList, il controllo RadioButtonList e un controllo ListBox a selezione singola, attenersi alla procedura descritta di seguito.

Per determinare la selezione in un controllo elenco a selezione singola

  • Utilizzare una delle seguenti modalità:

    • Per ottenere il valore di indice dell'elemento selezionato, leggere il valore della proprietà SelectedIndex. L'indice è in base zero. Se non è stata effettuata alcuna selezione, il valore della proprietà sarà -1.

    • Per ottenere il contenuto dell'elemento selezionato, recuperare la proprietà SelectedItem del controllo. Questa proprietà restituisce un oggetto di tipo ListItem. È possibile ottenere il contenuto dell'elemento selezionato recuperando la proprietà Text o Value dell'oggetto.

      Nota sulla sicurezza:

      I controlli in una pagina Web Form possono includere script client potenzialmente dannoso. Per impostazione predefinita, la pagina Web Form verifica che l'input dell'utente non includa script o altri elementi HTML. Per ulteriori informazioni, vedere Procedura: proteggere da attacchi tramite script in un'applicazione Web applicando alle stringhe la codifica HTML

    Nell'esempio di codice riportato di seguito viene illustrato come verificare l'elemento selezionato in un controllo RadioButtonList. Il codice determina innanzitutto se è stata effettuata una selezione leggendo il valore della proprietà SelectedIndex, impostato su -1 fino a quando l'utente non seleziona un elemento. Recupera quindi l'oggetto SelectedItem e visualizza la proprietà Text dell'oggetto.

    Protected Sub Button1_Click(ByVal sender As System.Object, _
            ByVal e As System.EventArgs) Handles Button1.Click
       ' Is anything selected? The index is -1 if nothing is selected.
       If RadioButtonList1.SelectedIndex > -1 Then
          Label1.Text="You chose: " & RadioButtonList1.SelectedItem.Text
       End If
    End Sub
    
    Protected void Button1_Click (object sender, System.EventArgs e)
    {
       // Is anything selected? The index is -1 if nothing is selected.
       if (RadioButtonList1.SelectedIndex > -1) {
          Label1.Text="You chose: " + 
              RadioButtonList1.SelectedItem.Text;
       }
    }
    

Se il controllo elenco supporta la selezione multipla, sarà necessario scorrere gli elementi del controllo e verificare singolarmente quelli selezionati.

Per determinare la selezione in un controllo elenco a selezione multipla

  • Scorrere l'insieme Items del controllo e verificare la proprietà Selected di ogni singolo elemento.

    Nell'esempio di codice riportato di seguito viene illustrato come verificare gli elementi selezionati in un controllo ListBox a selezione multipla denominato ListBox1. Il codice visualizza un elenco di elementi selezionati all'interno di un'etichetta.

    Protected Sub Button1_Click(ByVal sender As System.Object, _
           ByVal e As System.EventArgs) Handles Button1.Click
       Dim msg As String
       Dim li As ListItem
       msg = ""
       For Each li In ListBox1.Items
          If li.Selected = True Then
              msg = msg & "<br>" & li.Text & " selected."
          End If
       Next
       Label1.Text = msg
    End Sub
    
    Protected void Button1_Click(object sender, System.EventArgs e)
    {
       string msg = "" ;
       foreach(ListItem li in ListBox1.Items)
       {
          if(li.Selected == true)
             {
                msg += "<BR>" + li.Text + " is selected.";
             }
       }
       Label1.Text = msg;
    }
    

Vedere anche

Riferimenti

Cenni preliminari sui controlli server Web CheckBox e CheckBoxList

Cenni preliminari sul controllo server Web DropDownList

Cenni preliminari sul controllo server Web ListBox

Informazioni generali sui controlli server Web RadioButton e RadioButtonList