尽管需要以编程方式添加按钮,但我需要调用一个函数并返回所添加按钮的文本。例如
AddHandler button.Click, AddressOf function(value)
由于以下原因,这种想法是不可能的:
错误1'AddressOf'操作数必须是方法的名称(不带括号)。
使用lambda表达式很好,但是您必须正确编写它。您not使用AddressOf运算符。 Click事件处理程序是Sub,而不是Function。它需要两个参数。因此正确的语法是:
AddHandler button.Click, Sub(sender, e)
MessageBox.Show("Clicked!")
Dim retval = SomeFunction(value)
'' etc...
End Sub
需要VS2010或更高版本。
另一种方法是将标记值添加到按钮,可以在处理程序中检索它。