C# 如何使用winforms在前面显示form2,在后面显示form1?

C# 如何使用winforms在前面显示form2,在后面显示form1?,c#,forms,winforms,C#,Forms,Winforms,我想先显示form2(筛选表单)。实际上,我是从Form1(报表测试表单)页面加载调用form2。但它出现在后位的Form2和第一位的Form1 代码 private void ReportTestForm_Load(object sender, EventArgs e) { ReportFilterForm report = new ReportFilterForm(); report.Show(); } 屏幕截图 注意 private void ReportTestFor

我想先显示form2(筛选表单)。实际上,我是从Form1(报表测试表单)页面加载调用form2。但它出现在后位的Form2和第一位的Form1

代码

private void ReportTestForm_Load(object sender, EventArgs e)
{
    ReportFilterForm report = new ReportFilterForm();
    report.Show();
}
屏幕截图

注意

private void ReportTestForm_Load(object sender, EventArgs e)
{
    ReportFilterForm report = new ReportFilterForm();
    report.Show();
}
我不想隐藏表单1,请使用最上面的属性:

private void ReportTestForm_Load(object sender, EventArgs e)
{
    ReportFilterForm report = new ReportFilterForm();
    report.TopMost = true;

    report.Show();

}

ShowDialog将强制Form2关闭,以便能够返回Form1

report.ShowDialog();

报告。显示(本)@史蒂夫谢谢你,史蒂夫。它起作用了。但是你能告诉我这在Winforms中是如何工作的吗。奇怪的是,WPF文档中最好地解释了这一点,如果另一个应用程序为自己设置了最顶层的属性,会发生什么?。谁赢了?最后一个总是赢的。