vb.net의 일반적인 이벤트 처리기
-
21-08-2019 - |
문제
내 양식에 약 10 개의 버튼이 있으며 동일한 클릭 이벤트 핸들러를 호출하기를 원합니다.
그러나 이벤트 핸들러가 일반화되어야하며 vb.net에 "이"키워드가 없어 이벤트를 일으킨 컨트롤을 참조하십시오.
vb.net에서 "이"키워드의 기능을 어떻게 구현합니까?
다음을 수행하는 이벤트 핸들러를 쓸 수 있기를 원합니다.
Private Sub cmdButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdButton1.Click
currentTag = this.Tag
End Sub
해결책
vb.net에서 "이"키워드의 기능을 어떻게 구현합니까?
this
호출됩니다 Me
VB에서. 그러나 이것은 귀하의 코드와 관련이 없으며 포함 된 클래스를 말합니다. 귀하의 경우 대부분의 경우 Form
. 당신은 액세스해야합니다 sender
객체 매개 변수를 캐스팅 한 후 Control
:
currentTag = DirectCast(sender, Control).Tag
다른 팁
~ 안에 vb.net, Me
C#과 동일합니다 this
.
나는 당신이 원한다고 생각합니다 Me
예어.
vb.net에서 this
로 지칭됩니다 me
, vb.net의 핸들러에 관한 두 번째 질문에 대한 솔루션은 다음과 같습니다. Handles
a의 끝에 Private Sub
진술, 좋아요 :
Private Sub cmdButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
Handles cmdButton1.Click, 'cmdButton2.click, cmdButton3.click'
currentTag = this.Tag
End Sub
제휴하지 않습니다 StackOverflow