Нужно проверить все свойства в классе с помощью IDataErrorInfo - PullRequest
0 голосов
/ 29 декабря 2010

У меня есть окно WPF, в котором есть текст данных моего класса 'Item'.Когда пользователь вводит текстовое поле, проверка запускается без проблем.Мне нужно проверить этот TextBox и все другие свойства, которые установлены в этом связанном классе, когда пользователь нажимает «Сохранить».

Я не верю, что UpdateSourceTrigger - это то, что я ищу, хотя мне присвоено значение PropertyChanged, когда пользователь действительно вводит данные в поле.

Я бы не хотелустановите все мои свойства для соответствующего элемента управления пользовательского интерфейса при нажатии кнопки Сохранить, чтобы принудительно обновить свойство, но я смог.

Спасибо!

1 Ответ

1 голос
/ 30 декабря 2010

Проверка ошибок данных выполняется только тогда, когда привязка выталкивает новые значения свойств в источник данных.Если вы хотите выполнить эту проверку при любых других обстоятельствах, вам нужно написать код, чтобы сделать это.

Если ваши свойства пользовательского интерфейса привязаны к свойствам элемента, тогда проверка уже должна была выполняться для каждого из них, когдакнопка Save нажата.Так зачем вам снова его запускать?

Одной из распространенных проблем является то, что вы устанавливаете привязки для обновления на LostFocus, но объект, на который пользователь нажимает для сохранения элемента, не может быть сфокусирован.В этом случае последнее свойство, обновленное в пользовательском интерфейсе, не обновляется в источнике данных при сохранении элемента, поскольку его элемент управления не потерял фокус и его привязка не сработала.Это твоя проблема?

...