我正在用 C# 开发一个 MDI 应用程序。当两个 MenuStrip 组合时我遇到了麻烦:
我有父 ParentForm
及其MenuStrip parentMenu
一些ToolStripMenuItem
元素: Option1
, Option2
.
然后我有一个孩子Form
,它MenuStrip parentMenu
有两个ToolStripMenuItem
元素:Option1
和OtherOption
。这些的合并属性是仅匹配Opcion1
和附加的OtherOption
现在,问题来了:当显示子窗体并将两者MenuStrip
结合时,事件 parentMenu.ItemAdded 被触发,因为OtherOption
已添加到parentMenu.Items
集合中。情况并非如此Option1
。Option1.DropDownItems
请注意, (在子表单中) 可能有一些元素在Option1.DropDownItems
父表单中不存在。
我如何才能收到有关这些正在添加的项目的通知?
(为了清楚起见:假设parentMenu.Items
只包含一个ToolStripMenuItem Option1
只包含一个ToolStripMenuItem
,比如说'optionA'。假设childMenu.Items
只包含一个只包含一个ToolStripMenuItem Option1
。ToolStripMenuItem optionB
当两个菜单合并时,我怎样才能得到关于项目optionB被添加为父亲的通知?或者我怎样才能得到关于两个菜单合并的通知,知道哪些元素是新的?)。