Button Control事件处理程序

时间:2012-04-20 18:35:20

标签: asp.net vb.net

我是vb.net的新手,想知道这个问题。当您单击Web表单上的按钮控件时,visual studio会自动在后面的代码中为您输入此代码。

     Protected Sub btnSave_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnFlightInfo.Click
     end Sub

比如说,我想从另一个方法调用此方法。我该怎么办?我知道发件人是实际的按钮对象,但是e是什么?这是我到目前为止在另一个子中的内容。只是想更好地理解这种方法是如何工作的。

btnSave_Click(btnSave, ??what would you put there??)

4 个答案:

答案 0 :(得分:2)

调用事件不是一个好主意,将代码从事件移动到另一个私有方法,并在两个地方调用它。

Protected Sub btnSave_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnFlightInfo.Click
    ' Call your private method
End Sub

Protected Sub AnotherMethod
    ' Call your private method again here
End Sub

答案 1 :(得分:1)

只需通过EventArgs.Empty,按钮点击就没有什么重要的了。不过,您可以考虑将其反转:让另一个Sub包含公共逻辑,并从Click事件处理程序和您的其他方法调用它。

答案 2 :(得分:0)

你将使用委托 sender是按钮,e是被触发的事件 发件人是监听者,事件是捕手

答案 3 :(得分:0)

Protected Sub btnSave_Click(ByVal sender As Object, ByVal e As EventArgs)    Handles       btnSave.Click,btnsecond.Click

dim btn as button = ctype(sender,button)     if enter code here btn.text =“save”    否则如果btn.text =“Second”    万一     '打电话给你的私人方法    结束子

'参见基于发件人,您可以找出您点击了哪个按钮 '如果你不得不打电话给另一种方法打电话    'btnsave_click(没什么,没什么)

'至于WhaT是事件args是那样的 'EventArgs表示与该事件相关的数据,可用于传递参数,'将信息状态信息提供给处理代码的事件处理程序,以决定做什么。在这种情况下,它只是表示空事件参数的EventArgs,但是对于'例如,如果你有ImageButton的Click处理程序,你会注意到它的事件参数'可以让你访问X和Y坐标。换句话说,事件参数可以由具有事件相关数据的更具体的类表示,具体取决于控件