WPF DataGrid has RowEditEnding but no RowEditEnded

后端 未结 5 1251
生来不讨喜
生来不讨喜 2021-02-19 20:04

I\'ve bound an ObservableCollection to a DataGrid. When I change values in the DataGrid, the RowEditEnding event is raised. But the e.Row.Item is the object before editing, so y

5条回答
  •  执念已碎
    2021-02-19 20:58

    From https://social.msdn.microsoft.com/Forums/en-US/c38fc695-d1ec-4252-87b7-feb484ee01e4/wpf-4-datagrid-roweditending, change the UpdateSourceTrigger of the Binding to PropertyChanged. The Property will then be updated immediately, before the RowEditEnding event, and the new value can be accessed from the RowEditEnding event handler.

    For example, for a DataGridComboBoxColumn

    SelectedItemBinding="{Binding ForTestResult, UpdateSourceTrigger=PropertyChanged}"
    

    This seems a very simple way to solve this issue.

    In addition, although I have not tried it, I think it should be easy to also access the original value before editing if your object implements IEditableObject.

提交回复
热议问题