6

WPF での非同期検証に INotifyDataError インターフェイスを使用しています。私は財産を持っています

<TextBox Grid.Column="5" 
         Text="{Binding XXX.Name, ValidatesOnNotifyDataErrors=True}"/>

私のビューモデルにはプロパティがあります

public SomeType XXX

タイプ SomeType には、プロパティがあります

public string Name

現在、ViewModel は INotifyPropertyChanged と INotifyDataError を実装しており、検証はビューモデル クラスで非同期に行われます。SomeType は INotifyPropertyChanged のみを実装します。

私の質問はこれです。プロパティ名がどうあるべきかでErrorsChangedイベントを発生させるとき。DataErrorsChangedEventArgs(propertyName))私のバインディング パスはXXX.Name. プロパティ名は

  • XXX.名前
  • 名前

または他の何か、またはSomeTypeクラスにも INotifyDataErrorInfo を実装する必要がありますか?これは、検証をメイン ビュー モデルにとどめたいので、実行する必要がないことを望んでいました。

とにかく、上記の両方を試してみましたが、エラーイベントが発生していることを確認できますが、テキストボックスの周りに赤いボックスが表示されません。

4

1 に答える 1