访问上下文菜单后,菜单栏项目消失

时间:2014-12-14 14:06:02

标签: c# contextmenu menuitem menubar

使用VS2013 - C#.Net 4

我的应用程序顶部有一个主菜单栏,在编辑菜单上它包含常用的剪切/复制/粘贴项目。

这些菜单项以toolStripMenuItem_Copy

的格式命名

当用户右键单击文档区域

时,这些项目也会添加到上下文菜单中
        contextMenuStrip.Items.Add(toolStripMenuItem_Copy);
        contextMenuStrip.Items.Add(toolStripMenuItem_Cut);
        contextMenuStrip.Items.Add(toolStripMenuItem_Paste);

访问上下文菜单后,我的问题就出现了。此菜单项将从主菜单栏中删除,但随后打开上下文菜单,这些菜单项仍然正确添加到上下文菜单中,因此它们不会被销毁。

没有任何代码可以从菜单栏编辑菜单中删除这些项目。以这种方式使用菜单项是不好的做法吗?我应该在构建上下文菜单时创建新的菜单项以避免这个问题,我不熟悉这样做的优点/缺点,它是由未知的先前开发人员完成的。

1 个答案:

答案 0 :(得分:0)

您绝对应该为上下文菜单创建新项目并指向,例如将“复制”菜单项都复制到同一个事件处理程序。我不知道为什么会发生错误(虽然我确实有一些猜测),但我认为你现在所拥有的是一种不好的做法。