如何将事件处理程序传递给在VB中向该处理程序添加控件的函数?

时间:2013-03-05 18:53:47

标签: vb.net visual-studio-2010

我创建了一个处理一组控件显示的类。这些控件是在运行时创建的。因此,我必须在运行时将它们添加到事件处理程序中。我创建了一个函数,允许我指定用于某些控件的事件处理程序。代码如下所示:

这是主要表格

Dim displayObj as PackageDisplay = new PackageDisplay(AddressOf CheckBox_CheckedChanged)

构造函数执行此操作

Public Sub New(ByRef eventHandler as Action(Of System.Object, EventArgs)
    AddHandler chkExample.CheckedChanged, eventHandler
End Sub

但是,我收到以下错误:

  

类型'System.Action(Of Object,System.EventArgs)'的值无法转换为'System.EventHandler'

肯定必须能够传递事件处理程序并分配它,但我只是不知道如何。我已经尝试了几种不同的变体,但我无法弄清楚如何使这项工作。有什么想法吗?

1 个答案:

答案 0 :(得分:2)

您不需要制作,使用股票System.EventHandler