У меня есть DataForm из System.Windows.Controls.Data.DataForm.Toolkit, и мне нужно программно получить тот же результат, что и после нажатия кнопки «Отмена» в этой DataForm.
Мне это нужно, потому что этот DataForm находится в ChildWindow, и если я что-то изменю в DataForm и закрою ChildWindow, то изменения будут зафиксированы. Так работать не должно. Когда я закрываю ChildWindow, я хочу отменить все изменения так же, как после нажатия кнопки «Отмена».
я пробовал
protected override void OnClosing(System.ComponentModel.CancelEventArgs e)
{
dfColumnInfo.CancelEdit();
base.OnClosing(e);
}
но это не работает.
Заранее спасибо.
bugfinder предложил добавить код, сохраняющий изменения. Этого нет, потому что childWindow имеет editedObject как DataContext.
childWindow.DataContext = table;
childWindow.MyDataForm.DataContext = table.Items;
childWindow.Show();
Я не знаю как, но кнопка «Отмена» в DataForm отменяет все изменения, которые я сделал в DataForm, и это отличная мысль. Но как получить тот же эффект, используя другую кнопку childWindow или просто закрыв childWindow?