我的模型实现了INotifyDataErrorInfo
接口来验证它的属性,它工作正常,但问题是,属性 HasErrors 默认为 false,所以当我第一次运行我的应用程序并单击保存(表单为空)时,视图会引发 no错误,并保存数据。
这是我的视图模型的片段
public LoggingViewModel()
{
_loggingCommand = new RelayCommand(checkCredentials, canExecuteLogginForm);
_logingModel = new LoggingModel();
// I raise this event in the 'OnErrorsChanged' method in the model,
// so my ViewModel can subscribe and check the 'HasErrors' property.
_logingModel.FormIsValid += (o, e) => _loggingCommand.RaiseCanExecuteChanged();
}
private bool canExecuteLogginForm()
{
return !_logingModel.HasErrors;
}
你如何在你的应用程序中处理这种情况?
有关更多信息,我创建了这个github 存储库。