将类似按钮的动作分组的更好方法是什么?

时间:2010-11-24 13:26:21

标签: vb.net

说我有一个Button1子程序

   Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim buttonText As String = Button1.Text
        someOtherRoutine(buttonText)
    End Sub

我的主要表单中有很多这样的按钮。他们都这样做。获取文本并传递给其他一些例程。如果我有20个按钮,那么我将有20个这样的子程序。如果没有创建那么多子程序,是否有更好的(或标准方式)?

感谢

2 个答案:

答案 0 :(得分:3)

您可以使用这一个子例程来处理按钮的所有

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

      Dim myButton As Button = sender
      Dim buttonText As String = myButton.Text

      ...

End Sub

答案 1 :(得分:1)

您可以使用AddHandler为每个按钮添加相同的事件处理程序,也可以在Handles子句中使用逗号分隔列表。

Sub EventHandler() Handles Obj.Ev_Event, Obj2.Ev_Event
' Handle the event.
MsgBox("EventHandler caught event.")
EndSub