[英]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.