Как использовать IDataErrorInfo.Error в программе WPF?

У меня есть такой объект:

public class Person : IDataErrorInfo { public string PersonName{get;set;} public int Age{get;set;} string IDataErrorInfo.this[string propertyName] { get { if(propertyName=="PersonName") { if(PersonName.Length>30 || PersonName.Length<1) { return "Name is required and less than 30 characters."; } } return null; } } string IDataErrorInfo.Error { get { if(PersonName=="Tom" && Age!=30) { return "Tom must be 30."; } return null; } } } 

Связать свойства PersonName и Age легко:

   

Однако как я могу использовать свойство Error и показать его соответствующим образом?

Вот пример, адаптированный из этого вопроса , который показывает, как отображать ошибку в Tooltip:

      

Вы должны изменить стиль TextBox, чтобы он показывал, что не так с этим свойством. Вот простой пример, показывающий ошибку как подсказку:

  

Просто поместите его в Application.Resources из файла app.xaml, и он будет использоваться для каждого текстового поля вашего приложения:

    
  • Как извлечь шаблон управления по умолчанию в Visual Studio?
  • WindowsFormsHost всегда самый верхний элемент WPF
  • Вызывающий stream должен быть STA, потому что многие компоненты пользовательского интерфейса требуют этого
  • Глобальные горячие клавиши в WPF, работающие из каждого windows
  • Приложение WPF из Visual Studio 2010 выходит из строя Windows 7
  • WPF TabControl - предотrotation разгрузки при изменении вкладки?
  • Неактивность и активность WPF
  • Должен ли я привязываться к ICollectionView или ObservableCollection
  • WPF. Как я могу сосредоточить все элементы в WrapPanel?
  • как программно перемещать мышь, щелкнуть, правым кликом и нажатием клавиши и т. д. в winform и wpf?
  • Стиль кнопки WPF C #
  • Давайте будем гением компьютера.