C#: 在Windows 7上,form.TopMost = true无法正常工作

3

我正在使用安装程序类开发一个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();
        }
    }
}

这个问题是针对特定平台还是操作系统的吗?

也许安装窗口本身将TopMost属性定义为True? - Steve B
1个回答

5

如果你在负载下使用它,它就能正常工作:

private void MainForm_Load(object sender, EventArgs e)
{
    this.TopMost = true;
}

经过无数次失败尝试,这才是最终对我有效的方法。 - Dave Cousineau

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接