C#跨线程访问控件

说道跨线程就不得不提委托,委托在C#中非常重要。今天的办法也是通过委托实现,不过却是对跨线程访问控件这类操作做了个简单处理,方便以后使用这个方法访问控件。

代码狗

代码狗

这个方法会自动判断是不是跨线程访问控件,即使不是也能正常执行,一举两得。

方法代码:

先声明委托

 public delegate void SetText(Control tb, string str);
 private void SetAppendTB(Control tb, string str)
 {
 if (tb.InvokeRequired)//判断是不是跨线程 true是 false不是
 {
 SetText setText = new SetText(SetAppendTB);//实例化委托对象
 Invoke(setText, new object[] { tb, str });//线程传递
 }
 else
 {
 tb.Text = str;//赋值操作 可自行替换
 }
 }

代码很简单,逻辑很清楚,上面的代码出现了自己调用自己,只有一次,相信大家能看得懂,

原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/241274.html

(0)
上一篇 2022年4月7日 00:26
下一篇 2022年4月7日 00:26

相关推荐

发表回复

登录后才能评论