如何在C#中运行多个窗体?

时间:2017-06-28 12:43:04

标签: c# multithreading

如何从一个带有线程的表单中运行20个窗体表格? 浏览是我的新表单,我想创建20个此表单

 Browser Browse = new Browser();
 Browse.Show();

我尝试了线程

 Browser Browse = new Browser();
 Thread backgroundThread = new Thread(
       new ThreadStart(() =>
       {
          for (int n = 0; n < 20; n++)
          {
              Thread.Sleep(50);
              Browse.Show();
       }
  }
  ));
 backgroundThread.Start();

我有一个错误:

附加信息:跨线程操作无效:控制&#39; webBrowser&#39;从创建它的线程以外的线程访问。

enter image description here

1 个答案:

答案 0 :(得分:3)

For(int i = 0; i < 20; i++){
    Browser Browse = new Browser();
    Browse.Show()
}

您只需创建更多实例并显示它们......

编辑:

如果必须使用线程查看SynchronizationContext类。 Winforms具有SynchronizationContext.Current始终属于UI线程的属性。