/ / Uzyskaj nazwę przycisku, który wywołał zdarzenie - vb.net, winformy, zdarzenia

Uzyskaj nazwę przycisku, który wywołał zdarzenie - vb.net, winformy, zdarzenia

Mam obsługę zdarzeń, która obsługuje zdarzenie click wielu przycisków:

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, itp. To wszystkie przyciski. Teraz potrzebuję sposobu, aby określić, który przycisk wywołał zdarzenie, a także uzyskać nazwę przycisku jako ciąg. Jakikolwiek sposób to zrobić? Dzięki

Odpowiedzi:

4 dla odpowiedzi № 1

Możesz rzucić sender pisać Button i uzyskać dostęp do właściwości 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 dla odpowiedzi nr 2

Posługiwać się sender - do tego jest przeznaczony.

MessageBox.Show((sender as Button).Name);

Jeśli zamierzasz użyć go więcej niż raz, przypisz go do zmiennej, aby było łatwiej.

var button = (sender as Button);
MessageBox.Show(button.Name);