当ShowInTaskbar为false时,ShowDialog出现问题

本文关键字:ShowDialog 问题 ShowInTaskbar false | 更新日期: 2023-09-27 18:02:27

下面是一小段代码,可以说明我的问题:

public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
        timer1.Interval = 3000;
    }
    private void button1_Click(object sender, EventArgs e)
    {
        timer1.Start();
    }
    private void timer1_Tick(object sender, EventArgs e)
    {
        timer1.Stop();
        using (Form form = new Form())
        {
            form.ShowInTaskbar = false;
            form.ShowDialog();
        }
    }
}

如果我按下button1(调用button1_Click),然后单击任务栏中的另一个应用程序,使其来到顶部,然后在5秒后我回到我的应用程序,创建的表单将不可见,我将没有办法把它带回顶部,而我的Form1将无响应,因为有一个不可见的对话框在顶部。

有什么解决方法?

当ShowInTaskbar为false时,ShowDialog出现问题

让你的主窗体成为你的模态框的所有者。

Form form = new Form();
form.Owner = this;
form.ShowInTaskbar = false;
form.ShowDialog();