Существует только 3 вещи внутри из INotifyDataErrorInfo:INotifyDataErrorInfo. ErrorsChanged как сделать МОФ показать ошибки собственности, как `Address.Country`
HasErrors
: только для чтения логическое свойство, которое говорит, если объект в целом есть какие-либо проверки ошибки;
GetErrors
: метод, который возвращает ошибки проверки для данного свойства;
ErrorsChanged
: событие, которое должно быть поднято при обнаружении новых ошибок или недостатков. Вы должны поднять это событие для каждого свойства.
В демо-проекте я создаю форму, отобразить свойства объекта с именем ‘Person’
. Вот как проверка с INotifyDataErrorInfo включена в Переплет:
<TextBox Text="{Binding Name,Mode=TwoWay,ValidatesOnNotifyDataErrors=True}"/>
Мы должны установить ValidatesOnNotifyDataErrors
свойство true
.
Затем привязка регистрируется для события ErrorsChanged связанного лица. Время Eeach, когда это событие поднято для привязанного свойства, элементы управления будут одеваться сами, чтобы отобразить ошибку. это делается, только если для параметра HasErrors установлено значение true.
Вопрос:
- Есть ли кто-нибудь знает более подробно aobut в
ErrorsChanged event is raised for the binded property, the controls will dress itself to display an error
? Если я привязываю
Address.Country
отPerson
, будет ли возбуждено событиеErrorsChanged
для связанного имуществаAddress.Country
или нет? Зачем? есть ли способ сделать это обязательным, чтобы показать ошибки?<TextBox Text="{Binding Address.Country,Mode=TwoWay,ValidatesOnNotifyDataErrors=True}"/>