IDataErrorInfo - это интерфейс, который класс может реализовать, чтобы уведомлять подписчиков об ошибках для определенного свойства, а также об ошибках на уровне класса.
Если вы реализуете это для класса, который используется как ваш DataContext (то есть ViewModel в MVVM), вы можете установить UpdatesOnValidationError равным true для элементов управления и установить настраиваемый шаблон для отображения элемента по-другому в случае ошибок. WPF сделает за вас водопровод.
Вот краткое руководство , показывающее весь процесс .