好的,所以我在一个表单上有多个按钮,我希望一个标签根据单击的按钮显示一个特定的数字。例如,如果单击第一行中的任何按钮,则标签将显示 10。如果单击第二行中的任何按钮,则标签将显示 17,等等。我该怎么做?
问问题
333 次
2 回答
2
您可以使用Handles
关键字来处理来自多个对象的多个事件,使用一种Sub
方法,例如:
Private Sub Row1ButtonHandler(ByRef obj As Object, ByRef ea As EventArgs) _
Handles Button1.Click, Button2.Click, Button3.Click
Label1.Text = "1"
End Sub
Private Sub Row2ButtonHandler(ByRef obj As Object, ByRef ea As EventArgs) _
Handles Button4.Click, Button5.Click, Button6.Click
Label1.Text = "17"
End Sub
如您所见,现在,只要单击其行中的任何按钮,就会调用每个处理程序方法。
AddHandler
但是,使用和RemoveHandler
函数以编程方式设置事件处理程序可能更容易:
For c As Int32 = 0 to 10
Dim btn As Control = Page.FindControl("Button" & c)
AddHandler btn.Click, AddressOf MyEventHandler
Next c
请注意,我在Control
这里使用了泛型并假设您正在查看网页,但您可以通过使用 LinkButton 控件来更具体。
于 2013-02-27T12:45:30.607 回答
0
您可以对所有按钮使用句柄并获取发送者值中的按钮,然后添加您的逻辑。可能对你有帮助...
于 2013-02-27T12:50:46.587 回答