2017-02-11 78 views
1

好吧,我希望如果我不发布我的代码,因为它包含私人部分。从Xml加载ObservableCollection保存文件到Datagrid(C#,Wpf)

我会尽我所能地描述它。所以我做了observablecollection没有onpropetychangedatabind网格。如果我在集合中添加了一些东西,数据网格更新,一切运作良好。但是,如果我从xml保存文件中获得observablecollection,则它不会更新。

到目前为止,我检查了是否observablecollection加载一切(它),并试图更新数据网格手册(没有)。如果有人能够在看不到代码的情况下给我建议,我很高兴。 :)

回答

0

我最好的猜测是你应该加载ObservableCollection后再次设置DataGrid的ItemsSource属性。

使用此:

datagrid.ItemsSource = null; 
datagrid.ItemsSource = yourObservableCollection; 
+0

没有工作:/ –

+0

我编辑了答案 – Ron

+0

仍然没有工作,我猜Fruchtzwerg说的是问题,还是谢谢。 :) –

0

如果你正在改变整个集合,因为你没有使用INotifyPropertyChanged的UI不能识别的变化。您有两种选择:

  1. 执行INotifyPropertyChanged并在将新集合设置为源后引发事件。
  2. 清除旧收藏,并将新项目填入旧收藏。
+0

我想你是对的,谢谢我会测试。 –

+0

谢谢我使用第二种方法,它解决了! :) –