У меня есть несколько текстовых полей в приложении WPF, для которых я настроил некоторую проверку.
При загрузке приложение десериализует класс, к которому привязаны элементы управления окна WPF.
У меня есть ValidationRule, который (например) проверяет, существует ли файл. Если я не установлю ValidatesOnTargetUpdated, то соответствующий TextBox проверяется, когда я изменяю (привязанное) текстовое свойство, и я вижу красную рамку (по умолчанию) и подсказку ({Binding RelativeSource={x:Static RelativeSource.Self}, Path=(Validation.Errors).CurrentItem.ErrorContent}
), отображающую сообщение об ошибке.
Я хочу, чтобы элементы управления проверяли привязку, а не измененную собственность, поэтому я установил для ValidatesOnTargetUpdated значение true и могу видеть срабатывание validationRule при отладке.
Моя проблема в том, что (по умолчанию) шаблон ValidationTemplate игнорируется, когда ValidatesOnTargetUpdated="True"
несмотря на срабатывание ValidationRule.
Я вижу подсказку - она отображается с правильным сообщением об ошибке, но граница не отображается красным; это, кажется, игнорируется.
Есть идеи, почему это происходит?