原文:c#之委托(解决线程间操作无效)

之前刚接触winform这东西的时候,需要实现一个数据回显的功能,也就是将执行结果显示在控件上。当时涉及到了多线程的场景,所以,我最初的设想就是线程得到执行结果后,直接调用控件添加一个Item,虽然我是这么想的,但是人家编程语言显然不是这么想的,当场告诉我线程间操作无效,它无效,我笑了... ... 当时果断选择求助于搜索引擎,在一番cv操作之后,功能实现了,今天恰好时间充裕,决定将c 好好重新捋 ...

2020-08-15 14:26 0 1205 推荐指数:

查看详情

C# WinForm 线程操作无效: 从不是创建控件的线程访问它的解决办法

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

Mon Nov 30 21:58:00 CST 2020 0 816
bug:C#线程操作无效: 从不是创建控件" XX" 的线程访问它

今天遇到这个问题,百度了下,把解决的方法总结出来。我们在ui线程创建的子线程操作ui控件时,系统提示错误详细信息为:线程操作无效: 从不是创建控件“XXX”的线程访问它。 就我知道的有三种方法,先看一下msdn的介绍: 访问 Windows 窗体控件本质上不是线程安全的。如果有两个 ...

Tue May 17 00:46:00 CST 2016 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#】用委托(Delegate)的BeginInvoke和EndInvoke方法操作线程

让我们首先了解下什么时候用到C#异步调用: .NET Framework 允许您C#异步调用任何方法。定义与您需要调用的方法具有相同签名的委托;公共语言运行库将自动为该委托定义具有适当签名的BeginInvoke 和EndInvoke 方法。 BeginInvoke 方法用于启动C#异步 ...

Tue Mar 06 21:12:00 CST 2018 4 1267
C#委托、事件、线程

这是几个简单的例子,但是实际的开发中委托还还只在反射时用到过,事件的话只自己做了一次,并且还是特意去用的 ,实际上可以不用。线程的话,因为需要,所以用的会多点,这里主要是WS上的线程委托 在前面的反射实例中,也有用到委托执行方法。 这个例子是将一个方法或者委托实例作为另外一个函数的入参 ...

Tue Apr 23 03:14:00 CST 2019 0 1797
C#线程委托

很多时候写windows程序都需要结合多线程,在C#中用如下得代码来创建并启动一个新的线程。 但是很多时候,在新的线程中,我们需要与UI(Windows窗体设计器用户界面)进行交互,在C#中不允许直接这样做。可以参考MSDN中的描述。 “Windows 窗体”使用单线程单元 ...

Fri Dec 21 16:57:00 CST 2018 1 5040
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM