C#:form.TopMost = true无法在Windows 7上运行

Hem*_*wal 3 c# windows-7

我正在使用安装程序类开发Windows安装程序项目.我在安装之前打开Windows表单并成功打开.我想打开此表单作为最顶层的表单,但它在Windows 7上的安装向导后面打开.

在安装过程中,此窗体在Windows XP上成功打开,作为最顶层的窗体.问题仅出现在Windows 7上.

我使用以下代码在我的安装程序类中打开该表单:

namespace MyApp
{
    [RunInstaller(true)]
    public partial class DbInstallerClass : Installer
    {
        public DbInstallerClass()
        {
            InitializeComponent();
            Form frm = new DBInstallerForm();                                  
            frm.TopMost = true;  
            frm.ShowDialog();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

这个问题平台是特定的还是特定于OS的?

fab*_*fab 5

如果你把它放在负载下它是有效的:

private void MainForm_Load(object sender, EventArgs e)
{
    this.TopMost = true;
}
Run Code Online (Sandbox Code Playgroud)