Это немного WPF whodunnit! Мои валидации храмов не появляются, когда ожидаются
Проблема
В принципе, я использую IDataErrorInfo в моей модели представления для обеспечения обратной связи с ошибками ввода данных. Я вижу, что это называется и работает как ожидалось, но шаблон ошибки проверки для связанного элемента управления никогда не отображается WPF!
Я пробовал использовать встроенный шаблон ошибки по умолчанию для текстового поля по умолчанию, шаблон ошибки стиля и жесткий код. Ни одно из них не отображается в ситуации с ошибкой данных.
Вот мой код привязки xaml:
<TextBox x:Name="txtCaseNumber"
Text="{Binding Path=CaseNumber, UpdateSourceTrigger=PropertyChanged, ValidatesOnDataErrors=True}"/>
Ужасно, ошибка попадает в коллекцию Validation.Errors. Следующий код приводит к тому, что мое сообщение об ошибке IDataErrorInfo отображается рядом с элементом управления привязкой. Это заставляет меня думать, что проблема находится на стороне xaml, а не на стороне viewmodel.
<ContentPresenter
Content="{Binding ElementName=txtCaseNumber, Path=(Validation.Errors).CurrentItem}" />
Кроме того,
System.Windows.Controls.Validation.GetHasError(txtCaseNumber)
возвращает true.
Я размещаю WPF в winforms, если это имеет значение. Я не могу найти какие-либо ссылки в моем коде или стилях для Validation или ErrorTemplate, поэтому я уверен, что это не ставит перед собой цель.