Exception:线程间操作无效: 从不是创建控件的线程访问它 解决方案
2013-08-07 10:57
513 查看
1:对线程安全限制不高的程序直接可以用
System.Windows.Forms.Control.CheckForIllegalCrossThreadCalls = false;
取消捕获对错误线程的调用,但可能会遇到不可预知的结果。
2:使用委托代理
先根据实际情况定义一个委托 public delegate void ControlEventHandler(string value);
再定义一个代理对象
private void DO(string value)
{
MessageBox.Show(value);
}
在主程序中
System.Windows.Forms.Control.CheckForIllegalCrossThreadCalls = false;
取消捕获对错误线程的调用,但可能会遇到不可预知的结果。
2:使用委托代理
先根据实际情况定义一个委托 public delegate void ControlEventHandler(string value);
再定义一个代理对象
private void DO(string value)
{
MessageBox.Show(value);
}
在主程序中
private void button1_Click(object sender, EventArgs e) { Thread _thread = new Thread(ControlShowContent); _thread.Start("ThreadControlTest"); } private void ControlShowContent(object sender) { Thread.Sleep(2000); this.Invoke(new ControlEventHandler(DO), sender); }
相关文章推荐
- 线程间操作无效: 从不是创建控件“Control Name'”的线程访问它问题的解决方案及原理分析
- 线程使用中常见的错误-“System.InvalidOperationException”线程间操作无效: 从不是创建控件“ ”的线程访问它。
- InvalidOperationException、线程间操作无效: 从不是创建控件“”的线程访问它
- 线程间操作无效: 从不是创建控件“Control Name'”的线程访问它问题的解决方案及原理分析
- 线程间操作无效: 从不是创建控件“Control Name'”的线程访问它问题的解决方案及原理分析
- 线程间操作无效: 从不是创建控件的线程访问它 解决方案
- 线程间操作无效: 从不是创建控件“Control Name'”的线程访问它问题的解决方案及原理分析
- 线程间操作无效: 从不是创建控件“Control Name'”的线程访问它问题的解决方案及原理分析
- 线程间操作无效: 从不是创建控件“”的线程访问它~~~的解决方法~ 线程间操作无效: 从不是创建控件“Control Name'”的线程访问它问题的解决方案及原理分析
- 线程间操作无效,从不是创建控件的线程访问控件的解决方案
- 黄聪:C#“多线程线程间操作无效: 从不是创建控件的线程访问它。”,跨线程修改控件属性解决方案
- 线程间操作无效:从不是创建控件“Control Name'”的线程访问它问题的解决方案及原理分析
- 线程间操作无效: 从不是创建控件的线程访问它 解决方案
- Winform线程间操作无效从不是创建控件的线程访问它的几个解决方案async和await?
- 线程间操作无效: 从不是创建控件“Control Name'”的线程访问它问题的解决方案及原理分析
- System.InvalidOperationException:“线程间操作无效: 从不是创建控件“txtPortName02”的线程访问它。”
- 线程间操作无效: 从不是创建控件“Control Name'”的线程访问它问题的解决方案及原理分析
- 线程间操作无效: 从不是创建控件的线程访问它 解决方案
- 线程间操作无效: 从不是创建控件“Control Name'”的线程访问它问题的解决方案及原理分析
- 线程间操作无效: 从不是创建控件“Control Name'”的线程访问它问题的解决方案及原理分析