为多个按钮使用相同的事件处理程序

时间:2015-02-28 14:25:34

标签: vb.net

我通过设计创建了15个按钮。

每当我点击其中任何一个时,我希望他们有背景图片,例如:

  • 如果我点击button11,那么它的背景将是" Hello.jpg"
  • 如果单击button12,则其背景将变为" Hello.jpg"

是否有方法编写代码而不是为单个按钮编写代码?

代码应该检测我点击了哪个按钮然后更改其背景。

    Private Sub e_11_Click(sender As Object, e As EventArgs) Handles e_11.Click
e_11.Image = Image.FromFile("E:\battleship\Explode.gif")
End Sub

有没有办法处理每个按钮点击?

1 个答案:

答案 0 :(得分:3)

是的,您可以将同一方法绑定到多个控件:

Private Sub MyButtons_Click(sender As Object, e As EventArgs) _
    Handles e_1.Click, e_2.Click, e_3.Click, ...

    Dim myButton = DirectCast(sender, Button)
    myButton.Image = Image.FromFile("E:\battleship\Explode.gif")
End Sub