时间:2021-05-20
分析:label标签控件是主线程创建的,不能直接从另一个线程访问.可以这样认为:不能跨线程直接访问控件;
最简单的办法就是:
复制代码 代码如下:
using System.Windows.Forms;
Parent.Invoke(new MethodInvoker(delegate
{
Parent.label1.Text = "成功" ;
}));
其中,“Parent”是主窗体名称。 这样,我们就是在需要窗体控件产生变化的时候,发消息通知主窗体改变控件。这就完全避免了跨线程操作控件。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了C#中WinForm跨线程访问控件的实现方法,分享给大家供大家参考。具体实现方法如下:1、跨线程访问控件委托和类的定义复制代码代码如下:using
本文实例讲述了C#多线程与跨线程访问界面控件的方法。分享给大家供大家参考。具体分析如下:在编写WinForm访问WebService时,常会遇到因为网络延迟造成
net原则上禁止跨线程访问控件,因为这样可能造成错误的发生,推荐的解决方法是采用代理,用代理方法来间接操作不是同一线程创建的控件。第二种方法是禁止编译器对跨线程
设置字符间距最简单的办法是在字符之间敲空格,但是该方法费时费力,且字符间距很难均匀,且字符较多时很难操作,下面介绍一种简单方法,来看看怎么操作吧。 步骤:
1、最简单方法复制代码代码如下::