私はまだMVVMについて頭を悩ませようとしているので、この質問が基本的なものであれば申し訳ありません。
私のプログラムは画面にテキストを表示しますが、別のプロパティのステータスに応じて、テキストの色が異なります。
私の考えでは、これを2つの方法で行うことができました。
Status プロパティが変更されると、セッター内から色が変更されます。EG(疑似コード)
private LogDetails.LogStatus? logStatus; public LogDetails.LogStatus? LogStatus { get { return logStatus; } set { Color color = //logic to work out the color Color = color; } }
これは、OnPropertyChanged (自分で調査できます) を介して実行できると思います。
私の質問は、単純なタスクを完了するために2つのオプションが与えられているため、特定の状況では一方が他方よりも優れているか、もう1つが減価償却されているか古いか、またはMVVMパターンを緩和するためだけにオプション2を使用することを余儀なくされているか?
最終的に双方向バインディングが必要な場合 (たとえば、GUI からステータスを更新できるようにするため)、MVVM の方が優れていると思いますが、今日の現状では、何か考えはありますか?