WPF XamDataGrid не обновляется, пока не покинет текущую ячейку

В моем приложении НЕСКОЛЬКО XamDataGrids, и я хочу, чтобы все они включили соответствующие кнопки "Сохранить", как только пользователь изменит в них флажок. В настоящее время этого не происходит, пока я не покину ячейку или не нажму клавишу ввода и т. Д., Поскольку ячейка все еще находится в режиме редактирования. Я знаю, как это исправить, используя пост, который я нашел в code-behind:

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 различных файлов с сетками. Может быть, поведение?

2 ответа

Решение

Вам необходимо установить 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>

DataItemUpdateTrigger недвижимость доступна в FieldSettings класс в NetAdvantage 2013 v. 2 или более поздней версии.

Другие вопросы по тегам