如何通过单击VB中以编程方式添加的按钮来调用需要值的函数?

问题描述 投票:1回答:2

尽管需要以编程方式添加按钮,但我需要调用一个函数并返回所添加按钮的文本。例如

AddHandler button.Click, AddressOf function(value)

由于以下原因,这种想法是不可能的:

错误1'AddressOf'操作数必须是方法的名称(不带括号)。

vb.net basic
2个回答
6
投票

使用lambda表达式很好,但是您必须正确编写它。您not使用AddressOf运算符。 Click事件处理程序是Sub,而不是Function。它需要两个参数。因此正确的语法是:

    AddHandler button.Click, Sub(sender, e)
                                 MessageBox.Show("Clicked!")
                                 Dim retval = SomeFunction(value)
                                 '' etc...
                             End Sub

需要VS2010或更高版本。


0
投票

另一种方法是将标记值添加到按钮,可以在处理程序中检索它。

© www.soinside.com 2019 - 2024. All rights reserved.