J'ai un gestionnaire d'événements qui gère l'événement click de plusieurs boutons:
Private Sub primeHandler(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles _2s.Click, _3s.Click, _4s.Click, _5s.Click, _6s.Click
End Sub
_2s, _3s, etc sont tous des boutons. Maintenant, j’ai besoin d’un moyen de déterminer quel bouton a déclenché l’événement et d’obtenir le nom du bouton. en tant que chaîne. Un moyen de faire ça? Merci
Réponses:
4 pour la réponse № 1Vous pouvez lancer sender
taper Button
et accédez à la propriété Name.
Private Sub primeHandler(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles _2s.Click, _3s.Click, _4s.Click, _5s.Click, _6s.Click
Dim myButton As Button = CType(sender, Button)
Dim myName As String = myButton.Name
End Sub
1 pour la réponse № 2
Utilisation sender
- c’est ce qu’elle est conçue pour faire.
MessageBox.Show((sender as Button).Name);
Si vous allez l'utiliser plus d'une fois, assignez-le à une variable pour le rendre plus facile.
var button = (sender as Button);
MessageBox.Show(button.Name);