我有一個帶有快捷鍵的菜單欄。 鍵盤按預期工作。 然後我添加由主窗體(child.Owner = main)擁有的另一種窗體。 當此表格有焦點時,我無法訪問主窗體上的菜單(使用鍵盤)。C#/ WinForms/Make從子窗體訪問主窗體的菜單(快捷鍵)
我想這是預期的行爲,但如果我想允許在子窗體焦點時訪問主窗體上的菜單,我該怎麼做?
我不想手動設置和處理所有鍵盤事件並將它們綁定到正確的操作,這是唯一的方法嗎?
乾杯, 式
我有一個帶有快捷鍵的菜單欄。 鍵盤按預期工作。 然後我添加由主窗體(child.Owner = main)擁有的另一種窗體。 當此表格有焦點時,我無法訪問主窗體上的菜單(使用鍵盤)。C#/ WinForms/Make從子窗體訪問主窗體的菜單(快捷鍵)
我想這是預期的行爲,但如果我想允許在子窗體焦點時訪問主窗體上的菜單,我該怎麼做?
我不想手動設置和處理所有鍵盤事件並將它們綁定到正確的操作,這是唯一的方法嗎?
乾杯, 式
子窗體真集財產KeyPerview。
這沒有用,它應該是真的嗎? 我雖然這是由表單使用任何子控件之前獲得輸入。 –
您可以嘗試以下 - 這將添加菜單子窗體,但仍運行在事件處理程序的父窗體:
Form2 childForm = new Form2();
childForm.Controls.Add(menuStrip1);
childForm.MainMenuStrip = this.menuStrip1;
childForm.Show();
MDI應用程序? – Reniuz
不,這不是一個MDI應用程序 –
然後,您需要手動將鍵盤事件發送到父窗體。 – Reniuz