读书人

MDI子窗体中多线程弹出等候提示

发布时间: 2013-08-04 18:26:16 作者: rapoo

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可能还没有准备好

读书人网 >C#

热点推荐