У меня есть пользовательский элемент управления, который работает как селектор поставщиков. Он отображает текущее имя выбранного поставщика и использует кнопку для отображения диалогового окна выбора поставщика.
<PO:VendorSelector VendorId="{Binding Path=VendorId, Mode=TwoWay,
ValidatesOnDataErrors=True, NotifyOnValidationError=True, ValidatesOnNotifyDataErrors=True}" />
Я использую ValidationAttributes в модели данных, чтобы проверить, является ли VendorId нулевым. Обратите внимание, что ни один элемент управления в пользовательском элементе управления не привязывается напрямую к VendorId.
Когда я вызываю Validator.TryValidateObject, генерируется нулевое сообщение VendorId, но пользовательский элемент управления никогда не показывает никаких признаков ошибки. Мне нужно показать весь пользовательский элемент управления по ошибке.
Что мне нужно сделать? Что мне не хватает?
Стандартный шаблон проверки «Красная рамка/подсказка» повторно используется из шаблона, который работает для текстовых полей.
IDataErrorInterface
, так как WPF использует этот интерфейс для целей проверки. Вы можете увидеть действительно простой пример здесь, который включает настраиваемый шаблон проверки. - person Rachel   schedule 29.07.2015