new Thread(() =>
{
posBillTopControlView1.btnSync.Enabled = true;
}).Start();
这个线程不是btnSync创建的,所以不能修改btnSync的属性
想要在线程内修改属性:
this.Invoke(new ThreadStart(delegate()
{
posBillTopControlView1.btnSync.Enabled = true;
}));
子线程不可以直接操作主线程里的控件,为了线程安全的问题,使用INVOKE或BEGININVOKE可以操控的,但是其实不是子线程直接操控,相当于把操控控件的函数地址委托给主线程,让主线程来执行。。。