簡體   English   中英

合並MDI窗口的菜單條項

[英]Merge menu strip items for MDI windows

如何將具有相同菜單名稱的父表單和子表單的菜單項合並?

將菜單項的MergeAction設置為“MatchOnly”。

添加

因為這可能有點棘手,我將添加一個步驟列表來做一個簡單的例子。

  • 創建一個新的Windows窗體應用程序。
  • 添加新的Windows窗體並將其名稱保留為Form2。
  • 打開Form1設計器(如果尚未打開)。
  • 單擊表單並將Form1的IsMdiContainer設置為True。
  • 打開工具箱並將MenuStrip添加到Form1。
  • 在“在此處鍵入”框中鍵入&File
  • 在子項“在此處鍵入”框中鍵入A.
  • 在子項“在此處鍵入”框中鍵入B.
  • 您的MDI容器(Form1)應該有一個文件菜單,其中包含項目A和B.
  • 雙擊A項以添加單擊處理程序。
  • 添加new Form2 { MdiParent = this }.Show(); 處理程序方法。
  • 打開Form2設計師。
  • 打開工具箱並將MenuStrip添加到Form2。
  • 注意:有關Form2 MenuStrip上的Visible屬性的信息,請參閱下文,此時可以將其設置為False。
  • 在“在此處鍵入”框中鍵入&File
  • 在子項“Type Here”框中鍵入C.
  • 你的MDI子(Form2)應該有一個帶有項目C的文件菜單。
  • 單擊File菜單項,然后在Properties窗口中將MergeAction設置為MatchOnly。
  • 運行程序。

請注意,“文件”菜單項為A和B.

單擊文件 - > A以創建子窗口。

請注意,容器上的“文件”菜單現在包含A,B和C.

另請注意,子項上的“文件”菜單已存在,但沒有項目。 這是因為C被合並了。

您現在可以將子菜單的MenuStrip.Visible屬性設置為False,以便子項不顯示菜單。 在設計菜單時將其保留為True是很方便的,這樣您就可以驗證所有子菜單項是否已正確合並(它們將從子菜單中消失)。

您可以使用MergeIndex屬性來控制子項如何合並到容器中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM