1)如果控件不是在线程内创建的,就用invoke,或者用事件
2)用委托来实现,当然也可以设置form的一个属性,这样就不提示线程间操作的异常了
3).net2.0 在子线程操作主线程创建的控件时有些时候会有异常
请参考 ISynchronizeInvoke 的msdn
| BeginInvoke | 在执行此对象的主线程上执行委托。 | |
| EndInvoke | 等待通过调用 BeginInvoke 启动的进程完成,然后返回该进程生成的值。 | |
| Invoke | 在执行此对象的主线程上执行委托,使工作线程等待。 |
本文介绍了在.NET应用中如何安全地从子线程更新主线程创建的UI控件,探讨了使用Invoke、BeginInvoke及EndInvoke等方法解决跨线程操作引发的问题。
319

被折叠的 条评论
为什么被折叠?



