最近遇到这个狗血问题,以前在winform下毫无压力,构造里面加一句:Form.CheckForIllegalCrossThreadCalls = false 就天下太平了,WPF比较狗血:
第一步:
public delegate void delegate1();//定义委托
第二步:
写几个方法来操作控件:
private voidfun1()
{button1.content = “生化危机4拍的太垃圾了。”;}
private voidfun2()
{button2.content = “生化危机5这个游戏也很垃圾了。”;}
最后一步:
在线程里面,想触发控件事件的地方:
Dispatcher.BeginInvoke(DispatcherPriority.Normal, new delegate1(fun1));
Dispatcher.BeginInvoke(DispatcherPriority.Normal, new delegate1(fun2));
收工,回家打xb
另外,wpf还有一个狗血的地方,不能像winform一样直接 form1.handle.
必须这么做:WindowInteropHelper wih = new WindowInteropHelper(Application.Current.MainWindow);
然后 wih.handle。。。。。。。。。。。。。。。。。。。。。。。。。。。。