如何在VB.NET中为以编程方式创建的对象创建事件处理程序?

时间:2011-09-03 06:02:55

标签: .net vb.net

假设我有一个动态创建的对象。例如,假设我创建了一个名为“MyButton”的按钮:

Dim MyButton as New Button()
MyButton.Name = "MyButton"

如何创建“Click”事件?如果它是静态创建的,我可以创建一个函数:

Private Sub MyButton_Click(ByVal sender as system.object, ByVal e As System.EventArgs) Handles....

如何为MyButton实现事件处理程序?

2 个答案:

答案 0 :(得分:27)

您可以像这样使用AddHandlerAddressOf

Dim MyButton as New Button()
MyButton.Name = "MyButton"
AddHandler MyButton.Click, AddressOf MyButton_Click

MSDN文档中有更多信息:

答案 1 :(得分:9)

使用较新版本的VB.NET,您可以使用内联lambda表达式而不是整个方法(如果需要)

Dim MyButton as New Button()
MyButton.Name = "MyButton"
AddHandler MyButton.Click, Sub(sender2, eventargs2)
                               'code to do stuff
                               'more code to do stuff
                           End Sub