美文网首页
C#跨线程访问控件

C#跨线程访问控件

作者: 堆石成山 | 来源:发表于2020-09-24 18:26 被阅读0次

    1、跨线程检查设置为false

    Control.CheckForIllegalCrossThreadCalls = false;//是否捕获错误线程的调用
    

    2、使用Invoke或者BeginInvoke方法, async关键字

    this.Invoke(new Action(() =>
         {
             this.textBox1.text=msg;      
         }));
    
    this.BeginInvoke(new Action(async () =>
         {
           this.textBox1.text=msg;
           await Task.Delay(1);
        }));
    

    3、使用Invoke或者BeginInvoke方法的另一种表达,用法一样

      Action act = delegate (){ this.textBox1.text=msg; };
      this.BeginInvoke(act); 
    

    相关文章

      网友评论

          本文标题:C#跨线程访问控件

          本文链接:https://www.haomeiwen.com/subject/rdrtuktx.html