Comment : répondre à des événements de bouton dans des éléments DataList ou Repeater

Mise à jour : novembre 2007

Si un modèle de contrôle DataList ou Repeater inclut un contrôle serveur Web Button, LinkButton ou ImageButton, ces boutons peuvent envoyer leurs événements Click au contrôle conteneur DataList ou Repeater. Vous pouvez ainsi inclure des boutons de fonctions qui ne sont pas encore définies pour le contrôle DataList (modifier, supprimer, mettre à jour et annuler), et définir des fonctionnalités pour le contrôle Repeater.

Pour répondre à des événements Button dans des contrôles DataList et Repeater

  1. Incluez un Button, LinkButton ou un ImageButton dans un modèle de contrôle.

  2. Définissez, pour la propriété CommandName du bouton, une chaîne qui identifie sa fonction, telle que « Trier » ou « Copier ».

  3. Créez une méthode pour l'événement ItemCommand du contrôle conteneur. Dans la méthode, effectuez les opérations suivantes :

    1. Vérifiez la propriété CommandName de l'objet événement-argument pour examiner la chaîne passée.

    2. Exécutez la logique appropriée du bouton sur lequel l'utilisateur a cliqué.

    L'exemple suivant montre comment vous pouvez répondre à un clic de bouton dans un contrôle DataList. Dans l'exemple, le modèle ItemTemplate contient un contrôle ImageButton qui affiche un panier d'achat. Le bouton envoie la commande AddToCart. Le gestionnaire d'événements ItemCommand détermine le bouton sur lequel l'utilisateur a cliqué et, s'il s'agit du bouton du panier d'achat, il exécute la logique appropriée.

    Protected Sub DataList1_ItemCommand(ByVal source As Object, _
            ByVal e As DataListCommandEventArgs)
        If e.CommandName = "AddToCart" Then
            ' Add code here to add the item to the shopping cart.
            ' Use the value of e.Item.ItemIndex to retrieve the data 
            ' item in the control.
        End If
    End Sub
    
    protected 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 retrieve the data 
          // item in the control.
       }
    }
    

    Pour obtenir un exemple utilisant le contrôle serveur Web DataList, consultez Comment : permettre aux utilisateurs de sélectionner des éléments dans des contrôles serveur Web DataList.

Voir aussi

Tâches

Comment : permettre aux utilisateurs de modifier des éléments dans des contrôles serveur Web DataList

Comment : permettre aux utilisateurs de supprimer des éléments dans des contrôles serveur Web DataList

Comment : répondre à des événements de bouton dans un contrôle GridView

Référence

Vue d'ensemble du contrôle serveur Web DataList

Vue d'ensemble du contrôle serveur Web Repeater