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 № 1Moż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);