【C# WPF】登录需求多线程中报错 “调用线程无法访问对象,因为另一个线程拥有该对象“


造成这个错误的原因很多,以下是我在多线程中遇到的

我的思路,开启一个线程A登录。因为服务器响应登录成功需要在主线程做一些操作,我这边需要用到主线程的窗口对象,我把窗口对象传到线程 A,直接用实例方法会有这个错误,所以WPF提供了一个方法

Tip: 但是在Java swing 直接传 JFrame 对象是可以的

// 这里的this.window就是窗口实例,我是通过属性传到线程A类
this.window.Dispatcher.Invoke(new Action(() => {
        // 进行原来窗口对象的操作 do soming...
}));


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM