C# 线程间操作无效: 从不是创建控件“receivemsg”的线程访问它。
来源:互联网 发布:Ubuntu gnu grub 编辑:程序博客网 时间:2024/06/07 19:51
在学习异步Socke通信程序时,遇到“ 线程间操作无效: 从不是创建控件“receivemsg”的线程访问它”这种错误。
关于这种错误解决方法有两种:
方法一:
刚开始的时候,我按照网上提供的方法,直接在代码中添加如下代码:
public Form1() { InitializeComponent(); //关闭对文本框的非法线程操作检查 TextBox.CheckForIllegalCrossThreadCalls = false; }这种方法是利用直接关闭对文本框的非法线程操作的方法,解决问题,但是这种方法治标不治本,并没有从根本上解决跨线程调用的问题,所以我们接下来可以使用第二种方法。
方法二:
this.Invoke(new Action(() => { receivemsg.AppendText("客户端连接成功!" + "\r\n"); }));
在多线程编程中,我们经常要在工作线程中去更新界面显示,而在多线程中直接调用界面控件的方法是错误的做法,Invoke 和 BeginInvoke 就是为了解决这个问题而出现的,使你在多线程中安全的更新界面显示。
0 0
- C# 线程间操作无效: 从不是创建控件“receivemsg”的线程访问它。
- c#线程问题:线程间操作无效:从不是创建控件 的线程访问它
- C# 线程间操作无效: 从不是创建控件“”的线程访问它~~~的解决方法~
- c#关于“线程间操作无效: 从不是创建控件的线程访问它”的问题
- c# 线程间操作无效: 从不是创建控件“FormMain”的线程访问它
- C#多线程问题:线程间操作无效: 从不是创建控件“label4”的线程访问它
- BackGroundWorker解决“线程间操作无效: 从不是创建控件的线程访问它” (C# VS2008)
- C#线程间操作无效: 从不是创建控件" XX" 的线程访问它
- 线程间操作无效: 从不是创建控件“label1”的线程访问它。C#定时器
- c# 线程间操作无效: 从不是创建控件“0”的线程访问它
- C#线程间操作无效: 从不是创建控件" XX" 的线程访问它
- c# 线程间操作无效,从不是创建控件的线程访问了它
- c# 线程间操作无效: 从不是创建控件“textBox1”的线程访问它。解决方法
- 【转】C#线程间操作无效: 从不是创建控件" XX" 的线程访问它
- C#中线程间操作无效: 从不是创建控件 txtBOX 的线程访问它。
- C#错误---线程间操作无效: 从不是创建控件"Form1"的线程访问它.
- C#线程间操作无效: 从不是创建控件" XX" 的线程访问它
- C#中线程间操作无效: 从不是创建控件 txtBOX 的线程访问它
- 创建安卓应用
- cxf+spring 的自己学习心得
- Android设备资源占用模拟
- IOS---NSdata 与 NSString,Byte数组,UIImage 的相互转换
- 以太网帧格式
- C# 线程间操作无效: 从不是创建控件“receivemsg”的线程访问它。
- php 注释规范
- 反编译重新打包
- Redis主从复制问题和扩容问题的解决思路
- java二次开发微信公众号授权
- SSM Spring +SpringMVC+Mybatis 配置 及pom.xml
- webservice的压缩上传和下载
- 欢迎使用CSDN-markdown编辑器
- 蓝桥杯(Java) 入门训练 A+B问题