我有一个表单,我想在应用程序中打开它时总是在顶部,但我不希望它在主窗体最小化或导航其他应用程序时位于顶部。我希望它只在我的应用程序中处于领先地位。
在问题中回答:How to make a window always stay on top in .Net?
this.TopMost = true;
使表单位于顶部,但当导航到另一个应用程序或主表单关闭时,表单仍然位于顶部。
请问如何使表单仅在应用程序的顶部,同时使用户仍然可以在主窗体上工作?
答案 0 :(得分:15)
您正在寻找拥有的窗口。它始终位于所有者之上,并且与所有者一起最小化。拥有Windows的好例子是Visual Studio中的各种帮助窗口。您可以取消停靠它们,但它们将始终位于VS主窗口的顶部。
通过显示Show(所有者)重载来创建一个拥有的窗口。或者通过明确指定其所有者属性。
答案 1 :(得分:5)
设置顶级,然后设置所有者,例如下面。
public Form1()
{
InitializeComponent();
Form2 f2 = new Form2();
//top level not really needed
f2.TopLevel = true;
f2.Show(this);
}