Condividi tramite


Procedura: rispondere a eventi Button in controlli con associazione a dati

Aggiornamento: novembre 2007

Se si utilizza un controllo con associazione a dati contenente modelli, ad esempio un controllo DataList o FormView, e i modelli includono controlli server Web Button, LinkButton o ImageButton, i pulsanti possono inoltrare i propri eventi Click al controllo contenitore. In questo modo è possibile includere pulsanti relativi a funzionalità personalizzate, quali la modifica, l'eliminazione, l'aggiornamento e l'annullamento, non ancora definite per il controllo con associazioni a dati.

Per rispondere a eventi Button in controlli con associazione a dati

  1. Aggiungere un controllo Button, LinkButton o ImageButton in un modello di controlli.

  2. Impostare la proprietà CommandName del pulsante su una stringa che ne identifichi la funzione, ad esempio "sort" o "copy".

  3. Creare un metodo per l'evento ItemCommand del controllo. All'interno del metodo eseguire le seguenti operazioni:

    1. Verificare la proprietà CommandName dell'oggetto dell'argomento dell'evento per individuare la stringa che è stata passata.

    2. Eseguire la logica appropriata per il pulsante scelto dall'utente.

    Nell'esempio riportato di seguito viene illustrato come rispondere quando l'utente fa clic su un pulsante in un controllo DataList. Nell'esempio il controllo ItemTemplate contiene a sua volta un controllo ImageButton che visualizza un carrello della spesa. Il pulsante invia il comando AddToCart. Il gestore eventi determina quindi quale pulsante è stato scelto e, se si tratta del pulsante associato al carrello della spesa, esegue la logica corrispondente.

    Private Sub DataList1_ItemCommand(ByVal source As Object, _
            ByVal e As DataListCommandEventArgs) _
            Handles DataList1.ItemCommand
        If (e.CommandName = "AddToCart") Then
           ' Add code here to add the item to the shopping cart.
           ' Use the value of e.Item.ItemIndex to find the data row
           ' in the data source.
        End If
    End Sub
    
    private void DataList1_ItemCommand(object source, 
        DataListCommandEventArgs e)
    {
        if (e.CommandName == "AddToCart")
        {
            // Add code here to add the item to the shopping cart.
            // Use the value of e.Item.ItemIndex to find the data row
            // in the data source.
        }
    }
    

Vedere anche

Attività

Procedura: creare gestori eventi nelle pagine Web ASP.NET (Visual Studio)

Concetti

Cenni preliminari sui controlli server Web ASP.NET con associazione a dati