如果按钮在vb.net中单击,如何获取触发器?

问题描述:

这里是我的情况(注释行):如果按钮在vb.net中单击,如何获取触发器?

Private Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click, Button2.Click, Button7.Click 



    'If button1 is Click Then 
    ' form1.Show 
    ' Panel2.Hide() 
    'elseif button2 is click then 
    ' form2.show 
    ' Panel2.Hide() 
    'elseif button 7 is click then 
    ' form3.show 
    '  Panel2.Hide() 
    'else 
    ' msgbox("nothing have clicked") 
    'End If 


End Sub 

而且我想,这样的我的条件应该工作,我如何才能触发如果按钮是点击在vb.net?

+0

“得到触发器”是什么意思? “发件人”参数是被点击的项目 – Plutonix

+0

,就像按钮当前处于点击事件或已被点击一样 –

+0

我不知道这意味着什么。 'sender'可能是你正在寻找的 – Plutonix

这应该适合你。

Private Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click, Button2.Click, Button7.Click 

    Dim BT As Button = CType(sender, Button) 

    Select Case BT.Name 
     Case Button1.Name 
      form1.Show 
      Panel2.Hide() 

     Case Button2.Name 
      ...whatever 

     Case Button7.Name 
      ...whatever 

    End Select  
End Sub 

Private Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click, Button2.Click, Button7.Click 

    If Sender Is Button1 
      form1.Show 
      Panel2.Hide() 

    ElseIf Sender Is Button2 
      ...whatever 

    ElseIf Sender Is Button7 
      ...whatever 

    End if 
End Sub 

但你通常最好有单独的处理程序为每个。如果他们有一个非常共同的主题,他们只能将它们结合起来