原文:bug:C#线程间操作无效: 从不是创建控件" XX" 的线程访问它

今天遇到这个问题,百度了下,把解决的方法总结出来。我们在ui线程创建的子线程操作ui控件时,系统提示错误详细信息为:线程间操作无效: 从不是创建控件 XXX 的线程访问它。 就我知道的有三种方法,先看一下msdn的介绍: 访问 Windows 窗体控件本质上不是线程安全的。如果有两个或多个线程操作某一控件的状态,则可能会迫使该控件进入一种不一致的状态。 还可能出现其他与线程相关的 bug,包括争用 ...

2016-05-16 16:46 0 6401 推荐指数:

查看详情

C#线程操作无效: 从不是创建控件" XX" 的线程访问

转自:http://www.arasplm.net/index.php/zh/community/myblog/c-xx-.html 前些天做的要使用到线程的项目,现在和大家分享一下感受! 以下面小列子为例,给出这个问题的解决办法。下面的列子是以一个计数器为列讲解的。 public ...

Thu Aug 30 19:46:00 CST 2012 1 24560
C# WinForm 线程操作无效: 从不是创建控件线程访问它的解决办法

.net2后是不能跨线程访问控件的。,窗体上的控件是当前线程创建的,当用户异步执行一个方法:在该方法中给窗体上的控件赋值,记住:当执行一个异步委托的时候,其实 就是开了一个线程去执行那个方法,这样就会报错:线程操作无效: 从不是创建控件“某某某”的线程访问它。 1.在窗口线程中设置 ...

Mon Nov 30 21:58:00 CST 2020 0 816
线程操作无效: 从不是创建控件线程访问它。

上面的代码会报错,从新的线程访问其他线程控件:这是因为.NET禁止了跨线程调用控件, 否则谁都可以操作控件,最后可能造成错误。 1:线程操作无效: 从不是创建控件线程访问它。那么创建它的线程是哪个线程? (百度答案)从程序设计上来说,只有创建界面的主线程才能访问界面 ...

Wed Nov 22 03:07:00 CST 2017 0 32215
线程操作无效: 从不是创建控件线程访问它。

题目:在form窗体中有一个按钮和一个lable。点击按钮创建一个新的线程更新lable的值 上面的代码会报错,从新的线程访问其他线程控件:这是因为.NET禁止了跨线程调用控件, 否则谁都可以操作控件,最后可能造成错误。 1:线程操作无效: 从不是创建控件线程访问 ...

Wed Apr 15 18:57:00 CST 2015 0 12079
线程操作无效: 从不是创建控件“button1”的线程访问它。

.net2后是不能跨线程访问控件的。,窗体上的控件是当前线程创建的,当用户异步执行一个方法:在该方法中给窗体上的控件赋值,记住:当执行一个异步委托的时候,其实 就是开了一个线程去执行那个方法,这样就会报错:线程操作无效: 从不是创建控件“某某某”的线程访问它。 C# WinForm开 ...

Sat Apr 18 07:05:00 CST 2015 1 14385
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM