【发布时间】:2011-06-29 17:33:42
【问题描述】:
我使用绑定到实现 INotifyPropertyChanged 接口的对象集合的 DataGridView。因此,只要对象的属性发生变化,DataGridView 就会正确更新(它们不断变化,通过串行端口从设备获取它们的值)。
挑战在于我需要双向绑定。但是,当我开始手动编辑 DataGridView 时,当为当前编辑对象引发 PropertyChanged 事件时,我得到以下 InvaliedOperationException:“跨线程操作无效:控制'dataView'从创建它的线程以外的线程访问”。
问题是:我可以使用什么策略来允许在 DataGridView 控件中编辑值并同时显示它们?
【问题讨论】:
-
您是否从不同的线程轮询集合中的日期?如果是这样,您将需要使用
Control.BeginInvoke和Control.InvokeRequired。这里有很多关于这个话题的问题:)
标签: c# .net winforms datagridview inotifypropertychanged