Как использовать 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 и показать его соответствующим образом?
- Рекомендации по док-станции WPF
- Как вы делаете стыковку AppBar (к краю экрана, например WinAmp) в WPF?
- Внедрить INotifyPropertyChanged в сгенерированные classы Entity Framework
- Зачем использовать MVVM?
- В чем разница между x: Reference и ElementName?
- Где Application.DoEvents () в WPF?
- WPF перед записью
- Загрузка XAML XML через среду выполнения?
- Приложение .NET не может запускать и получать XamlParseException
- Неявные стили в Application.Resources vs Window.Resources?
- Управление WPF WebBrowser - как подавить ошибки скрипта?
- Каков наилучший способ передать событие в ViewModel?
- Инструмент Reportviewer отсутствует в visual studio 2017 RC
Вот пример, адаптированный из этого вопроса , который показывает, как отображать ошибку в Tooltip:
Вы должны изменить стиль TextBox, чтобы он показывал, что не так с этим свойством. Вот простой пример, показывающий ошибку как подсказку:
Просто поместите его в Application.Resources из файла app.xaml, и он будет использоваться для каждого текстового поля вашего приложения: