MDI子窗体中多线程弹出等待提示
在进行长时间处理时弹出提示窗口
在一般窗口中下面的代码可实现
FrmWait wForm;
wForm = new FrmWait();
Thread thread= new Thread((ThreadStart)delegate
{
Application.Run(wForm);
});
thread.Start();
DoSomthing();//数据处理函数耗时比较长
wForm.Invoke((EventHandler)delegate { wForm.Close(); });
但是在MDI模式的子窗体中使用,报错在创建窗口句柄之前不能在控件上调用Invoke。
加
while (!this.IsHandleCreated)
{
;
}
没作用。
对线程不是很了解有什么解决办法吗?
线程
[解决办法]
thread.Start();线程执行后,代码会继续运行,wForm可能还没有准备好