我需要将更改保存在我的DataGrid中。事实上,在用户修改单元格值后,旧的值被最新的值替换,但当我单击该单元格时,我得到了旧值。因此,我认为应该在更改后保存行DataContext。请注意,我在我的DataGrid中插入了一个DataTable,这就是为什么我需要从后台代码更新DataContext。
SelectedMaterial = materialName;
var cellInfo = DataGridScenarios.CurrentCell;
DataGridCell gridCell = TryToFindGridCell(DataGridScenarios, cellInfo);
if (gridCell != null)
gridCell.Content = SelectedMaterial;
DataGridRow row = GetSelectedRow(DataGridScenarios);
row.DataContext = ???????欢迎有任何想法。
发布于 2014-01-15 22:25:34
您不需要更改DataContext所有绑定基础设施都不会“手动”更改值。
仍然保留旧值的原因是,数据网格的默认绑定行为是将"UpdateSourceTrigger“设置为松散焦点,您需要在列/单元格定义(XAML)中将其更改为"PropertyChanged”。
https://stackoverflow.com/questions/21139463
复制相似问题