The validation infrastructure contained in the
ViewModelBase and the
DataErrorNotifier classes caters for both asynchronous and synchronous validation models. When using this system, validation code should reside in one of two overridable methods:
BeginValidation uses an asynchronous event driven validation model, and
GetPropertyErrors provides for a simpler synchronous model for when asynchronous processing is not required.
When using either the synchronous or asynchronous validation models, validation errors are represented using a custom class named
DataValidationError has an
ErrorMessage property of ...