日期:2014-05-18  浏览次数:21075 次

在创建窗口句柄之前,不能在控件上调用 Invoke 或 BeginInvoke
在winform多线程中,出现“在创建窗口句柄之前,不能在控件上调用 Invoke 或 BeginInvoke。”的异常,请高手解决。。。

------解决方案--------------------
没有建立窗口就不能再界面线程上运行invoke吧。句柄相当于一个地址,没有句柄就说明这个窗口还没建立,因此窗口里面的控件(控件作为窗口对象的成员)。
不一定对,抛砖引玉
------解决方案--------------------
你的Invoke不会写在构造函数里了吧?那时窗体还没创建好
------解决方案--------------------
估计是你的窗体已经被Close之后还调用它的方法,线程要同步,估计是你的线程早于窗体运行,或者窗体关闭后还在运行,判断一下窗体的状态,再调用,