Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何防止单个MDI子窗体从每个其他MDI子窗体窃取焦点_C#_Winforms_Mdichild - Fatal编程技术网

C# 如何防止单个MDI子窗体从每个其他MDI子窗体窃取焦点

C# 如何防止单个MDI子窗体从每个其他MDI子窗体窃取焦点,c#,winforms,mdichild,C#,Winforms,Mdichild,我的窗口中有几个MDI子窗体, MDI子窗体启动后的其中一个子窗体将 导致焦点机制异常,这意味着另一个MDI子窗口 除非单击标题栏,否则不会获得焦点 mdi子窗体中的任何其他位置都不会导致窗体聚焦 有什么想法吗?如果我有足够的代表性,我会将此作为一个评论,因为这只是一个猜测,因为问题中没有太多信息 请尝试确保MDI子项正在处理click事件,以确保将焦点设置为正在单击的窗体。我从来没有真正注意到这样的行为。我唯一想到的是,您正在以某种方式覆盖正在填充的其他MDI子项上的默认鼠标单击行为,但由于我

我的窗口中有几个MDI子窗体, MDI子窗体启动后的其中一个子窗体将 导致焦点机制异常,这意味着另一个MDI子窗口 除非单击标题栏,否则不会获得焦点 mdi子窗体中的任何其他位置都不会导致窗体聚焦


有什么想法吗?

如果我有足够的代表性,我会将此作为一个评论,因为这只是一个猜测,因为问题中没有太多信息

请尝试确保MDI子项正在处理click事件,以确保将焦点设置为正在单击的窗体。我从来没有真正注意到这样的行为。我唯一想到的是,您正在以某种方式覆盖正在填充的其他MDI子项上的默认鼠标单击行为,但由于我认为您无法覆盖标题栏单击,我认为这就是它仍然有效的原因


可以稍微解释一下您在MDI子控件内所做的操作,以便我们更好地了解可能导致此行为的原因。

MDI子控件中嵌入了多个自定义控件(自定义控件,如日历/类似日程表的控件,涉及大量鼠标单击/操作处理程序)有没有办法知道默认的鼠标点击行为是什么?另外,出于某种原因,“字体”设置有时也会弄乱表单的焦点,对此有何想法?谢谢你的评论,至少这是一个开始,我认为这是正确的方向。是的,对不起,我不能说得更具体一些,有时候你不知道控件到底发生了什么,这很难说。