winform 多线程中ShowDialog()步骤无效的解决办法

时间:2022-08-17 20:24:52
private void Form1_Load(object sender, EventArgs e)

{

    Thread thread = new Thread(remind);

    thread.IsBackground = true;

    thread.Start();

}

private void remind()

{

   while (true)

   {

      string h = "0";

      string m = "23";

      if (h == DateTime.Now.Hour.ToString() && m == DateTime.Now.Minute.ToString() && DateTime.Now.Second.ToString() == "0")

      {

          Form2 form2 = new Form2();

          form2.ShowDialog();

          Thread.Sleep(1000);

      }

   }

}

form2的ShowDialog()显示并不是模式窗体,如何解决这种情况???

解决办法:

 Form2 form2 = new Form2();

 form2.ShowDialog(this);