私のモデルは、INotifyDataErrorInfo
インターフェイスを実装してそのプロパティを検証していますが、正常に動作しますが、HasErrorsプロパティはデフォルトではfalseであるため、初めてアプリケーションを実行して保存(フォームは空です)ビューはエラーを発生せず、データは保存されます。ここINotifyDataErrorInfoを使用したMvvmモデルの検証
は、あなたのアプリでこの状況に対処んどのように私のviewmodelのsnipet
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 reposを作成しました。
デフォルトでHasErrorsがTrueになるようにコードを更新できますか?あなたのLogginModelコンストラクタでそれを検証するか強制検証しますか? – robaudas
HasErrorsはINotifyDataErrorInfoインターフェイスのメンバーです。フォームにエラーがない場合はfalseを返します。どのように私は検証を強制することができますか? –