У меня есть два элемента управления, привязанные к свойствам MinCartValue и MaxCartValue. MinCartValue должно быть меньше MaxCartValue. Чтобы выполнить эту проверку, я реализовал интерфейс IDataErrorInfo и выполнил указанную выше проверку в методе this [columnName], если затронуты MinCartValue или MaxCartValue. ValidatesOnDataErrors = True устанавливается в привязке обоих элементов управления. Проверка работает правильно, выделяя каждый элемент управления, когда изменение значения его свойства нарушает правило. Проблема в том, что после того, как элемент управления помечен как недопустимый, если пользователь исправляет проблему, изменяя значение другого элемента управления, первый элемент управления остается помеченным как недопустимый. Это понятно, потому что метод IDataErrorInfo не выполнял проверку свойства первого элемента управления.
Итак, мне нужен способ принудительной повторной проверки свойства №1 (или способ очистки недопустимого состояния) при проверке свойства №2, и наоборот. Я попытался вызвать RaisePropertyChanged в моем методе this [columnName], но он ничего не сделал. Также попытался установить для свойства собственное значение, чтобы попытаться обмануть его, чтобы проверить себя, но снова ничего не происходит.
Спасибо