繁体   English   中英

当某些表单处于打开/活动/聚焦状态时,菜单条项目会变灰

[英]Grey out menustrip items when certain forms are open/active/focused

在我的父表单上,我有一个菜单条。 我默认禁用(Enabled=false)一些选项。 但是,我无法从需要启用这些项目的孩子访问菜单。

我在子窗体构造函数中尝试了很多这样的变体:

 string[] visibleItems = new[] { "Export", "Import" }; foreach (ToolStripMenuItem item in MdiParent.MainMenuStrip.Items) //base.MainMenuStrip.Items, MainMenuStrip.Items, base.Menu.MdiListItem.MenuItems won't work either. { if (visibleItems.Contains(item.Name)) item.Enabled = true; }

我收到一个空指针错误,我似乎无法访问我创建的菜单。

无论如何,如果我让它像这样工作,我想我必须在窗口失去焦点或关闭时再次禁用这些项目。 那么当不同的表单打开/关闭聚焦/不聚焦时,访问项目属性的正确方法是什么?

我知道这是一个老问题,以防万一有人面临同样的问题。 您可以尝试将控件的修饰符更改为Public,然后再次查看。

暂无
暂无

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

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