C#之跨线程调用UI

C#之跨线程调用UI

正常多线程修改,报错

privatevoidbutton1_Click(objectsender,EventArgse){Threadthread=newThread(Test);thread.Start();}publicvoidTest(){label1.Text="HelloWorld";}

需要添加Invoke:同步更新UI

privatevoidbutton1_Click(objectsender,EventArgse){Threadthread=newThread(Test);thread.Start();}publicvoidTest(){Invoke(newAction(()=>{label1.Text="HelloWorld";}));}

BeginInvoke:异步更新UI

BeginInvoke(newAction(()=>{label1.Text="HelloWorld";}));