2010-09-13 20 views
0

我有一個MDI應用程序,它帶有一個keyFocus和一個childForm,並將KeyPreview設置爲TRUE。現在在我的childForm中,當我按下一個鍵時,程序將以這兩種形式啓動事件KeyPressed。當childForm處於活動狀態時,我可以在mainForm中禁用事件嗎?僅在MDI應用程序的活動子項中啓用KeyDown事件c#

我要的是泰德:當childForm是活動的,應觸發僅在表單中的事件......

最好的問候,斯特凡

回答

2

你可以只添加

if(ActiveMdiChild != null) 
    return; 

到父窗口的事件處理程序的開始處...

0

答案應該是這樣的

private void mdifrm_MdiChildActivate(object sender, EventArgs e) 
    { 
     if (ActiveMdiChild != null) 
      // if there's a form keyPreview set to False 
      KeyPreview = false; 
     else 
      // else set to True 
      KeyPreview = true; 

    } 
相關問題