C#中不允许UI线程以外的线程访问控件解决办法

在C#中任何UI以外的线程访问UI中的控件被认为是不安全的

此时 this.InvokeRequired的值就为True

解决办法 

创建一个委托,然后调用 Invoke方法

我这里是异步线程对TreeViwe进行操作

//创建带一个参数的委托
delegate void ScanDelegate(string value);

if (this.InvokeRequired)
{
   ScanDelegate s = new ScanDelegate(ScacnType);
   this.Invoke(s, Code);
}
else
{
   ScacnType(Code);
}

猜你喜欢

转载自blog.csdn.net/qq_41630695/article/details/113245768