2010-09-13 45 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; 

    } 
相关问题