我的应用程序中有几个XamDataGrids,我希望所有这些都在用户更改其中的复选框后立即启用相应的“保存”按钮。这个目前不会发生,直到我离开单元格或按回车等,因为单元格仍处于编辑模式。我知道如何使用我在代码隐藏中找到的帖子解决这个问题:
private void XamDataGrid_CellChanged(object sender, Infragistics.Windows.DataPresenter.Events.CellChangedEventArgs e)
{
e.Cell.Record.SetCellValue(e.Cell.Field, e.Editor.Value, true);
}
但是如何在应用程序中为我的所有网格处理此问题,而不是将其放在每个网格的代码隐藏中?我正在使用MVVM,如果可能的话,我希望不会有任何代码。如果我必须,我会,但我肯定不希望它在17个不同的网格文件背后的代码中。也许是一种行为?
答案 0 :(得分:7)
您需要将DataItemUpdateTrigger设置为OnCellValueChange。
XamDataGrid中所有字段的默认值
<igDP:XamDataGrid.FieldSettings>
<igDP:FieldSettings
DataItemUpdateTrigger="OnCellValueChange" />
</igDP:XamDataGrid.FieldSettings>
对于单个字段
<igDP:Field Label="" Name="IsSelected" >
<igDP:Field.Settings>
<igDP:FieldSettings DataItemUpdateTrigger="OnCellValueChange" />
</igDP:Field.Settings>
</igDP:Field>
答案 1 :(得分:1)
DataItemUpdateTrigger
课程中提供了 FieldSettings
属性。