110,536
社区成员
发帖
与我相关
我的任务
分享
// 获取或设置一个值,该值指示是否捕获对错误线程的调用,这些调用在调试应用程序时访问控件的 System.Windows.Forms.Control.Handle 属性。
// 返回结果:
// 如果捕获了对错误线程的调用,则为 true;否则为 false。
Control.CheckForIllegalCrossThreadCalls = false;
public void DoGUIClear()
{
if (this.InvokeRequired)//如果在非创建控件的线程上.
{
//生成一个委托的方法
GUIClear delegateMethod = new GUIClear(this.DoGUIClear);
//调用委托的方法. 这个调用,使用了this对象(创建控件的句柄对象)
this.Invoke(delegateMethod);//这么调用就"名正言顺"了
}
else//否则 是在创建控件的线程上执行此函数, 可以直接访问控件.
this.lstRegisterValues.Items.Clear();
}