原文:WinForm中新开一个线程操作 窗体上的控件(跨线程操作控件)

最近在做一个winform的小软件 抢票的... 。登录窗体要从远程web页面获取一些数据,为了不阻塞登录窗体的显示,开了一个线程去加载数据远程的数据,会报一个错误 线程间操作无效: 从不是创建控件 lbl loading msg 的线程访问它。 百度一下,原来从.net framework . 开始,为了安全,不允许跨线程操作控件。解决办法如下: 声明一个拥有委托类型的方法,作为代理 操作控件的 ...

2013-11-29 22:04 1 3303 推荐指数:

查看详情

[WinForm]WinForm线程UI操作常用控件类大全

前言 在C#开发的WinForm窗体程序开发的时候,经常会使用多线程处理一些比较耗时之类的操作。不过会有一个问题:就是涉及到线程操作UI元素。 相信才开始接触的人一定会遇上这个问题。 为了解决这个问题,可以通过委托来实现。 我为了后期使用更加方便,就将常用的几个控件(TextBox ...

Tue May 24 20:41:00 CST 2016 33 4724
C# winform 线程更改窗体控件的属性

  当winform程序中新开一个线程,是无法改变主线程窗体控件的属性的,否则运行时会报错。   若想在其他线程中控制主线程中的窗体控件,则必须利用BeginInvoke方法。   例如:添加一个名为textbox1的TextBox控件,想将它的Visible设置为false,则执行下面 ...

Fri Dec 16 19:43:00 CST 2016 0 1671
winform线程访问控件

首先说下,.net 2.0以后加强了安全机制,不允许在winform中直接线程访问控件的属性。所以除了控件所在的线程外的线程调用会抛异常 (Cross-thread operation not valid:Control 'textBox1' accessed from a thread ...

Wed Nov 15 01:00:00 CST 2017 2 4116
C#线程操作控件

1.首先通过按键创建子线程: 创建子线程,子线程调用changeText方法。 2.子线程操作弹窗提示: 效果图: 3.子线程修改主线程控件 (1)错误的直接使用: 效果图: (2)关闭线程的检查 ...

Tue Sep 29 02:08:00 CST 2015 2 6100
C#线程操作控件

Winform、wpf禁止线程直接访问控件,因此在必须线程访问控件的时候采用异步方式。 1、wi ...

Fri Oct 17 21:42:00 CST 2014 3 5278
WPF线程操作UI界面控件

在WPF应用中,如果遇到多线程的需求时,如果引用WPF控件时会引发异常,异常内容:调用线程无法访问此对象,因为另一个线程拥有该对象。具体如下: 调用代码: ThreadcountThread= new Thread( new ThreadStart(Count ...

Tue Sep 17 17:36:00 CST 2019 0 663
C#线程操作控件线程修改主线程控件

3.子线程修改主线程控件 (1)错误的直接使用: 效果图: (2)关闭线程的检查: 效果图: 注:参数类型是object型 按键点击调用方法修改控件: 注:参数不是在线程创建的时候写入,是在start函数写入 ...

Fri Jan 08 23:00:00 CST 2021 0 351
C# WinForm 线程访问控件

问题出现: 在WinForm 处理多线程访问主线程控件时候,就会出现如图所示的错误对话框: 解决方案: 方案一:去掉线程访问主线程UI控件的安全检查,使用: 方案二:使用委托,将对主线程的UI控件操作推送了该线程的消息队列里,使用的方法 ...

Fri Sep 15 18:53:00 CST 2017 3 11689
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM