解决方案 »
- Process.start 无法在win7下用。
- TableLayoutPanel 控件 怎样创建新的一行 代码实现
- 急 BinaryFormatter序列化和反序列化 具体用法
- remoting 本地一切正常 放到服务器就是回调的时候总是出错误
- 对智能客户端的离线功能的原理还是不很理解,请指点
- 请问有没有.net下的free的报表解决方案?
- 项目与项目之间可以传递参数吗?
- 能否给用户控件添加一个事件?高手请进!!!
- 谁能帮忙把这段C++的代码改写成C#的
- 帮帮忙!哪位大哥知道C#正式版的好书。给分!!!
- webbrowser控件在IE9以后的版本中关于光标定位的问题
- C# webservice类冲突问题
Invoke指定用主线程中的控件去调用这个委托,相当于主线程来执行这个函数
dispFrameView(pframe); 直接使用delegate
m_Form.Invoke(dispFrameView, pframe); 使用窗体的invoke
没区别的都是主线程调用
如果你不在主线程调用run那么就会有跨线程问题,这时候要用invoke了,直接调用委托会报跨线程access exception
只有委托是不能解决跨线程访问控件错误的....只能用invoke..
http://blog.sina.com.cn/s/blog_9ffc639301011bil.html
我在主线程开了一个子线程调用run()这个方法,那么用dispFrameView(pframe)和m_Form.Invoke(dispFrameView, pframe)都没问题,如果我在另一个线程调用这个方法,是否只能使用invoke?
而你说的..既然你都开了子线程调用run()了..那么另外一个线程对主线程来说一样是子线程..只要不跨域,都能直接调用..