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 или более поздней версии.