【问题标题】:Two-way binding for DataGridViewDataGridView 的双向绑定
【发布时间】:2011-06-29 17:33:42
【问题描述】:

我使用绑定到实现 INotifyPropertyChanged 接口的对象集合的 DataGridView。因此,只要对象的属性发生变化,DataGridView 就会正确更新(它们不断变化,通过串行端口从设备获取它们的值)。

挑战在于我需要双向绑定。但是,当我开始手动编辑 DataGridView 时,当为当前编辑对象引发 PropertyChanged 事件时,我得到以下 InvaliedOperationException:“跨线程操作无效:控制'dataView'从创建它的线程以外的线程访问”。

问题是:我可以使用什么策略来允许在 DataGridView 控件中编辑值并同时显示它们?

【问题讨论】:

  • 您是否从不同的线程轮询集合中的日期?如果是这样,您将需要使用Control.BeginInvokeControl.InvokeRequired。这里有很多关于这个话题的问题:)

标签: c# .net winforms datagridview inotifypropertychanged


【解决方案1】:

只是一个建议,您可以使用 BackgroundWorker 类并使用 DoWork 执行数据绑定。希望这可以帮助。

【讨论】:

    猜你喜欢
    • 2020-06-03
    • 2015-04-26
    • 2016-04-19
    • 2012-05-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多