6

我的应用程序中有几个 XamDataGrid,我希望所有这些都在用户更改其中的复选框后立即启用相应的保存按钮。这目前不会发生,直到我离开单元格或按 Enter 等,因为单元格仍处于编辑模式。我知道如何使用在代码隐藏中找到的帖子来解决此问题:

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 个带有网格的不同文件的代码中。也许是一种行为?

4

2 回答 2

7

您需要将DataItemUpdateTrigger设置为OnCellValueChange

XamDataGrid 中所有字段的默认值

<igDP:XamDataGrid.FieldSettings>
    <igDP:FieldSettings 
        DataItemUpdateTrigger="OnCellValueChange" />
</igDP:XamDataGrid.FieldSettings>
  • 我相信这可以很容易地用作所有 XamDataGrids 的样式。

对于单个字段

<igDP:Field Label="" Name="IsSelected" >
    <igDP:Field.Settings>
        <igDP:FieldSettings DataItemUpdateTrigger="OnCellValueChange" />
    </igDP:Field.Settings>
</igDP:Field>
于 2014-06-12T13:27:20.803 回答
1

DataItemUpdateTrigger属性FieldSettings在 NetAdvantage 2013 v. 2 或更高版本的课堂上可用。

于 2015-02-03T22:26:52.223 回答