如何使表单始终在应用程序中处于领先地位

我有一个表单,我想在应用程序中打开它时总是在顶部,但我不希望它在主窗体最小化或其他应用程序导航时位于顶部。 我希望它只在我的应用程序中处于领先地位。

在问题的答案之后: 如何使窗口始终保持在.Net的顶部?

this.TopMost = true; 

使表单位于顶部,但当另一个应用程序导航到主表单或关闭主表单时,表单仍然位于顶部。

请问如何使表单仅在应用程序的顶部,同时使用户仍然可以在主窗体上工作?

您正在寻找一个拥有的窗口。 它始终位于所有者之上,并且与所有者一起最小化。 拥有Windows的好例子是Visual Studio中的各种帮助窗口。 您可以取消停靠它们,但它们将始终位于VS主窗口的顶部。

您可以通过显示Show(owner)重载来创建一个拥有的窗口。 或者通过显式分配其所有者属性。

设置顶级,然后设置所有者,例如下面的示例。

 public Form1() { InitializeComponent(); Form2 f2 = new Form2(); //top level not really needed f2.TopLevel = true; f2.Show(this); }