如果我在另一个线程中调用WinForms对象的form.show()
方法,该窗体将会抛出异常。有没有办法在主应用程序线程中添加新的可见窗体?否则,我该如何打开窗体而不停止当前正在执行的线程?
这是我的示例代码。我尝试启动一个线程,然后在该线程内执行一些工作。随着工作的进行,我将显示该窗体。
public void Main()
{
new Thread(new ThreadStart(showForm)).Start();
// Rest of main thread goes here...
}
public void showForm()
{
// Do some work here.
myForm form = new myForm();
form.Text = "my text";
form.Show();
// Do some more work here
}