调用子表单事件替换或避免mdi父表单事件

时间:2013-08-05 11:26:33

标签: c# winforms gridcontrol

mdimain_MdiChildActivate中,为所有子表单定义应用程序逻辑 与GridControl mouseDoubleClick事件相关。 它适用于包含子窗体的所有网格,但在某些情况下,为子窗体内部定义了网格mouseDoubleClick。 因此,事件从MdiParent和内部部分一次被触发两次。 是否有任何方式使MdiParent父控件事件不会触发此mouseDoubleClick案例,比较/验证子表单的ifexist案例而不更改MDI表单中的代码。

示例示例:

private void MDIMain_MdiChildActivate(object sender, EventArgs e)
{
    // code should not work
}      

private void MainGridControl_MouseDoubleClick(object sender, MouseEventArgs e)
{
  ///  Child Form : code should work
}

1 个答案:

答案 0 :(得分:0)

此方法会在WM_NCHITTEST被触发之前检测发送到MainGridControl的{​​{1}}消息。这只能检测MdiChildActivate上是否使用了鼠标(Click,DoubleClick),但我认为它适用于您的情况。

MainGridControl