基本上我想要做的是将一个新项添加到DataGrid中,该DataGrid具有DataBinded List<>它。我已经尝试了我能想到的一切,但我总是得到“An ItemsControl与其items source不一致”的异常。如果有人能帮助我,我会很高兴
答案 0 :(得分:1)
您是否将项目添加到数据绑定列表< CustomClass>在后台线程?然后你可以使用调度程序来编组Add调用以支持UI线程:
Application.Current.Dispatcher.BeginInvoke(new Action(()=> { yourCollection.Add(yourItem); })));
对修改源集合的所有“添加”和“删除”操作执行此操作。
您还应该替换List< CustomClass>使用ObservableCollection<>如果您希望DataGrid在项目添加到源集合时自动更新。 ObservableCollection提供更改通知,但List不提供:http://msdn.microsoft.com/en-us/library/ms668604%28v=vs.110%29.aspx。
还要确保将项添加到源集合而不是DataGrid控件的Items属性。
答案 1 :(得分:0)
尝试在EnableCollectionSynchronization
上使用ItemsSource
方法。