在动态创建的子菜单项上添加click事件

时间:2012-06-09 06:08:10

标签: vb.net

如何将click事件添加到动态创建的菜单项?

我以为我可以做点什么

循环浏览Menu1.DropDownItems中的所有项目,然后在项目上创建一个mousedown,并根据该项目执行操作。

我是VB新手,想知道要使用什么逻辑。这甚至会起作用吗?如何在应用程序的整个生命周期中保存事件?

1 个答案:

答案 0 :(得分:3)

您必须拥有适合事件签名的方法。然后,在创建MenuItem时,您可以为事件添加处理程序:

Dim item As New MenuItem(...)
'...
AddHandler item.Click, AddressOf myEventHandler

Sub myEventHandler(sender As Object, e As System.EventArgs)
    'Do something
End Sub

您无法在无法访问的类中创建活动。唯一的选择是从它派生,但这只适用于某些情况。对于MenuItem,这甚至不是必需的,因为它已经提供了Click事件。你只需要为它添加一个处理程序。处理程序保存在项目的事件中,该事件维护一种处理程序列表。

相关问题