赢形式在父窗体的前(Win Form in front of parent form)

2019-10-18 15:06发布

我有一个包含按钮来创建一个新的派生类形式的形式。 在回调此按钮,我的代码

 AnotherFormClass newForm= new AnotherFormClass();
 newForm.Show();

当点击按钮,这个运行时,newForm瞬间在我的屏幕上的原始形式的前闪烁,但后来原来的形式回来了前面。 我不想用蛮力最顶层()它迫使newForm总是在前面。 另外,我不知道为什么,我看到这种行为。 谁能帮助吗? 我看到有一篇文章在这里提一个稍微类似的问题- 父窗体正在给前被点击时子窗体的菜单条 ,但是这是.NET 4.5和我遇到在4.0这个行为先。

谢谢,克里斯

Answer 1:

“在newForm瞬间在我的屏幕上的原始形式的前闪烁,但后来原来的形式回来了前面。”

如果你的意思是,你总是需要的子形式在前面

使用Form.ShowDialog()方法,这将让子形式在前面,直到你关闭它。

你的情况

 var newForm= new AnotherFormClass();
 newForm.ShowDialog(this);

了解更多关于Form.ShowDialog方法



Answer 2:

您需要显示新的形式作为当前形式的孩子:

newForm.Show(this);


文章来源: Win Form in front of parent form
标签: c# forms