0

とクラスがProjectModelあります。ProjectViewModelmy Model はプロジェクトの直接操作を処理し、ビュー モデルは「見やすい」プロパティとコマンドを提供します。

ただし、私の ViewModel では、ビュー バインディングの読み取り専用プロジェクト コントラクトを公開しています。

private ProjectModel Model { get; set; } 

public IProject Project
{
    get
    {
        return Model.Project;
    }
}

したがって、ここでは、プロパティModelは変更されませんが、プロパティModel.Projectは変更さModelれるため、変更されたときにその PropertyChanged イベントが発生します

これで、Fody-PropertyChangedには、プロパティが (同じクラス内の) 別のプロパティに依存しているかどうかを検出し、他のプロパティが変更された場合に変更イベントを発生させる機能があることがわかりました。

オブジェクトが変更された通知を発生させたときにFody-PropertyChangedが発生する可能性があるかどうか疑問に思っていました。PropertyChanged("Project")Model

もちろん、手動で行うこともできます。しかし、私はFodyに固執したいと思います。これは悪い考えですか?あるいは、これはそもそもMVVMの悪い習慣ですか?

4

1 に答える 1

1

いいえ Fody-PropertyChanged は現在、あなたが説明した方法でラップされたプロパティを検出することをサポートしていません。

于 2013-03-30T00:00:53.367 に答える