您不能绑定到 WPF DataGrid's
Columns 属性,因此解决方法是使用在此 SO question/answer中找到的附加属性。我的视图模型公开了一个ObservableCollection
包含 的DataGridColumns
,我DataGrid
通过这个附加属性将它绑定到 。
后台线程负责填充集合,我正在使用Dispatcher.Invoke
它来执行此操作,我认为这可以避免线程问题。后台线程本身工作正常,但在上面附加的属性代码中引发了异常:
调用线程无法访问此对象,因为不同的线程拥有它。
(在else if
处理 Add 动作的地方,特别是 line dataGrid.Columns.Add(column);
)。
知道可能出了什么问题吗?