WPF:解决 调用线程无法访问此对象,因为另一个线程拥有该对象
在winform中使用多线程,只需要在load里面加入Control.CheckForIllegalCrossThreadCalls = false;就好了,但是在wpf这句话却不存在,lz找了半天,发现了一个最简单的解决方法,分析一下。
来源:http://www.pianshen.com/article/8637294347/
只需把报错的多线程代码放入
private void Sp1_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
this.Dispatcher.Invoke(new Action(delegate
{
//你的多线程代码
}));
}
即可
本文介绍了一种在WPF应用程序中解决多线程访问UI元素的问题方法。不同于WinForm,WPF不支持Control.CheckForIllegalCrossThreadCalls属性。文章提供了一个简单有效的解决方案,即将多线程代码封装在Dispatcher.Invoke方法中,确保UI更新操作在主线程执行。

2394

被折叠的 条评论
为什么被折叠?



