Kov*_*Bal 26 data-binding wpf datagrid
我有一个带有一些数据的WPF DataGrid.您可以通过单独的窗口添加行.DataContext是相同的,LINQ-to-SQL对象.绑定也是一样的,我将"ItemsSource"属性绑定到表.
在另一个窗口中,当用户单击"保存"时,我以编程方式创建一行并使用"InsertOnSubmit"添加它.之后我使用DataContext的"SubmitChanges"方法.
我的问题是DataGrid没有更新.如果我重新启动应用程序,我可以看到新行,所以它在数据库中,但我找不到刷新DataGrid的方法.
到目前为止,我已经尝试在DataGrid的BindingExpression上使用"UpdateTarget",但它没有帮助.我也试过"dataGrid.Items.Refresh()" - 结果相同.我怎样才能解决这个问题?
小智 66
从这里尝试datagrid.Items.Refresh()http://programmer.wrighton.org/2009/01/wpf-datagrid-items-refresh.html
Ana*_*tts 21
它没有更新的原因是LINQ-to-SQL没有实现INotifyCollectionChanged,所以WPF无法告诉ItemsSource已经更新.解决此问题的最不可靠的方法是将LINQ-to-SQL结果复制到ObservableCollection - 当您执行Insert时,还要添加到observable集合.然后你会看到更新.
| 归档时间: |
|
| 查看次数: |
86323 次 |
| 最近记录: |