按下返回键时,如何强制更新DataGrid行

时间:2015-01-06 17:42:49

标签: wpf datagrid

我有一个WPF DataGrid绑定到ObservableCollection点。我在viewmodel中有一个处理程序,它在DataGrid中编辑一个点时更新模型,另一个处理程序在CollectionChanged事件被触发时自动向集合添加一行{{1} }。

当用户通过单击空行的第一列添加行时,会出现问题。该行将自动填充,光标将设置为编辑第一列中的值。用户希望能够立即编辑该值并点击返回以更新args.Action == NotifyCollectionChangedAction.Add,但它不起作用。编辑点时触发的处理程序不会触发,因此模型中的数据不会更新。要编辑此新行,用户必须先离开,然后重新输入。我的用户不喜欢这个。

为了解决这个问题,我在视图中添加了一个DataGrid处理程序。我试过了两个

OnPreviewKeyDown

dataGrid.CommitEdit();

但我还是无法让datagrid更新。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

我发现此处发布的解决方案

http://www.sirentuan.com/3034640/codep1/wpf-datagrid-source-updating-on-cell-changed

我刚在每列上使用了UpdateSourceTrigger=LostFocus,这比我试图做的要简单得多。