Condividi tramite


Procedura: consentire agli utenti la selezione di elementi nei controlli server Web DataList

Aggiornamento: novembre 2007

È possibile consentire agli utenti di selezionare singoli elementi nel controllo server Web DataList. La selezione di un elemento ne determina in genere l'evidenziazione visiva. È inoltre possibile visualizzare informazioni diverse per un elemento selezionato.

Per consentire agli utenti di selezionare elementi in un controllo DataList

  1. Creare un modello SelectedItemTemplate per definire il layout di tag e controlli per un elemento selezionato. Per informazioni dettagliate, vedere Modelli dei controlli server Web ASP.NET.

  2. Impostare le proprietà SelectedItemStyle del controllo. Per informazioni, vedere Controlli server Web ASP.NET e stili CSS.

  3. Nel modello ItemTemplate (e nel modello AlternatingItemTemplate eventualmente utilizzato), aggiungere un controllo server Web Button o LinkButton.

  4. Impostare la proprietà CommandName del pulsante specificato nel passaggio precedente su select (con distinzione maiuscole/minuscole).

  5. Creare un gestore eventi per l'evento SelectedIndexChanged del controllo DataList. Nel gestore eventi chiamare il metodo DataBind del controllo per aggiornare le informazioni presenti nel controllo. Il codice completo potrebbe essere analogo al seguente:

    Protected Sub DataList1_SelectedIndexChanged(ByVal sender As _
            System.Object, ByVal e As System.EventArgs) _
            Handles DataList1.SelectedIndexChanged
       DataList1.DataBind()
    End Sub
    
    protected void DataList1_SelectedIndexChanged (object sender, 
        System.EventArgs e)
    {
       DataList1.DataBind();
    }
    

Per annullare la selezione, impostare la proprietà SelectedIndex del controllo su -1. A tal fine, aggiungere un controllo server Web Button al modello SelectedItem e impostarne la proprietà CommandName su "unselect". L'evento Click di questo pulsante viene inoltre inoltrato all'evento ItemCommand del controllo DataGrid.

Il codice completo potrebbe essere analogo al seguente:

Protected Sub DataList1_ItemCommand(ByVal source As Object, _
        ByVal e As DataListCommandEventArgs) _
        Handles DataList1.ItemCommand
   If e.CommandName = "unselect" Then
      DataList1.SelectedIndex = -1
   End If
   DataList1.DataBind()
End Sub

Vedere anche

Riferimenti

Cenni preliminari sul controllo server Web DataList