【发布时间】:2014-06-02 01:40:57
【问题描述】:
我可以使用以下代码执行子菜单列表:
Dim cm As GoContextMenu = New GoContextMenu(view) 'GoContextMenu Inherits System.Windows.Forms.ContextMenu
Dim subTop(1) As MenuItem ' if you have 2 submenu, then the array count is 2-1 = 1; subm(1)
Dim orMenu As New MenuItem("OR", New EventHandler(AddressOf Me.OrTopGateItem_Click))
Dim andMenu As New MenuItem("AND", New EventHandler(AddressOf Me.AndTopGateItem_Click))
cm.MenuItems.Add(New MenuItem("Type", subTop))
根据上述情况,我设法创建了一个子菜单,如下图所示: screen shot of my submenu outcome
如何在运行时动态添加更多子菜单?
谢谢。
【问题讨论】:
-
您到底想添加什么?您不能只添加 anything,因为对于那些您不会声明处理程序。请提供更多详细信息。
-
@Neolisk,在上面的示例代码中,我需要在执行程序之前手动创建一个数组并定义大小,因为我知道菜单中的项目数。现在项目的数量在运行时是未知的,如何将这些项目动态添加到子菜单中?
-
我仍然无法理解您的要求。你期望最终得到什么?假设其中一些在编译时已知(=它们是静态的),您将如何填充这些动态项。请出示相关代码。
-
您的操作方式与设计时相同。请参阅下面的 MSDN 代码。