繁体   English   中英

将项目添加到ToolStripMenuItem.DropDownItems集合时如何获得通知

[英]How to get notified when an Item is added to a ToolStripMenuItem.DropDownItems collection

我正在用C#开发MDI应用程序。 将两个MenuStrip合并时遇到麻烦:

我父父Form与它MenuStrip parentMenu和一些ToolStripMenuItem元素: Option1Option2

然后,我有一个孩子Form与它MenuStrip parentMenu和两个ToolStripMenuItem元素: Option1OtherOption 这些合并propierties正赛,只为Opcion1和追加的OtherOption

现在,这是问题所在:当显示子窗体并将两个MenuStrip合并时,由于将OtherOption添加到parentMenu.Items集合中,因此将事件parentMenu.ItemAdded设置为tiggrered。 Option1并非如此。 请注意, Option1.DropDownItems中的某些元素(在子窗体中)可能不存在于父窗体的Option1.DropDownItems中。

如何获得有关添加的这些项目的通知?

(只是为了清晰:假设parentMenu.Items只包含ToolStripMenuItem Option1只包含一个ToolStripMenuItem ,说“optionA”假设。 childMenu.Items只包含一个ToolStripMenuItem Option1只包含ToolStripMenuItem optionB当两个菜单合并,怎么可以。我收到有关父亲添加的optionB项的通知;或者如何知道两个元素是新的又如何合并两个菜单的通知?)。

“ MenuStrip合并将菜单项从一个ToolStrip移至另一个,而不是像MainMenu那样将其克隆。 这里

因为它是在移动而不是克隆它们,所以请尝试对ToolStripItem进行OwnerChanged事件。 为您的每个项目挂起此事件,当它移动到另一个工具栏时,它将通知您。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM