Comment : répondre aux événements de bouton dans des contrôles liés aux données
Mise à jour : novembre 2007
Si vous utilisez un contrôle lié aux données avec des modèles (par exemple un contrôle DataList ou FormView) et que les modèles incluent des contrôles serveur Web Button, LinkButton ou ImageButton, les boutons peuvent transférer leurs événements Click au contrôle conteneur. Cela vous permet d'inclure des boutons destinés à des fonctionnalités personnalisées qui ne sont pas encore définies pour le contrôle lié aux données (telles que la modification, la suppression, la mise à jour et l'annulation).
Pour répondre à des événements de bouton dans les contrôles liés aux données
Ajoutez un objet Button, LinkButton ou ImageButton dans un modèle de contrôle.
Définissez, pour la propriété CommandName du bouton, une chaîne qui identifie sa fonction, telle que « Trier » ou « Copier ».
Créez une méthode pour l'événement ItemCommand du contrôle. Dans la méthode, effectuez les opérations suivantes :
Vérifiez la propriété CommandName de l'objet événement-argument pour identifier la chaîne passée.
Exécutez la logique appropriée pour le 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 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.
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. } }
Voir aussi
Tâches
Comment : créer des gestionnaires d'événements dans des pages Web ASP.NET (Visual Studio)
Concepts
Vue d'ensemble des contrôles serveur Web liés aux données ASP.NET