最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
C#异常:线程间操作无效: 从不是创建控件“xxx”的线程访问它
时间:2013-08-06 编辑:简简单单 来源:一聚教程网
C# WinForm开发中,这是一个比较常见的异常:线程间操作无效,从不是创建控件“xxx”的线程访问它。这个异常来源于.NET2的一个限制:工作线程不能访问窗口线程创建的控件。解决方法主要有两种,一种是在窗口线程中设置CheckForIllegalCrossThreadCalls = false ;另一种方式比较麻烦,使用委托的方式调用Invoke方法。
比如窗口中有一个button1,我要新建一个线程访问到button1。第一种方式是:
代码如下 | 复制代码 |
this.button1.Enabled = false; }catch(Exception ex) |
Start();使用委托
代码如下 | 复制代码 |
/// /// |
然后再从新线程访问控件button1
代码如下 | 复制代码 |
this.button1.Enabled = false; // 用委托的方式 |
相关文章
- C#复制数组的两种方式及效率比较解读 10-24
- ASP.NET Identity用法解析 10-24
- ASP.NET MVC使用Identity增删改查用户介绍 10-24
- C语言中atoi函数模拟实现介绍 10-18
- .Net反向代理组件Yarp用法介绍 10-10
- .NET使用YARP通过编码方式配置域名转发实现反向代理教程 10-10