【发布时间】:2011-03-01 20:35:15
【问题描述】:
我有许多用于与我的程序对象交互的 Windows 窗体控件。目前,他们订阅对象上的“更新”事件,并在需要时手动更新值。我想使用数据绑定替换所有(或尽可能多)这个样板代码。
我遇到的问题是对象状态可以随时被几个不同线程中的任何一个修改。目前我使用 Invoke() 来处理这个问题,效果很好,但是当我切换到数据绑定时,我被非法的跨线程控制异常淹没了。有没有首选的方法来优雅地使用数据绑定来处理这个问题,还是我最好让事情保持现在的样子?
谢谢!
【问题讨论】:
-
你能显示你之前和之后的代码吗?
标签: c# winforms multithreading data-binding