私は、SilverlightでMVVMを使用していますが、問題は、より一般的に適用されます。私はそれをどのように言いたいのかよくわからないので、例を使用します。MVVMのベストプラクティス - それはどのようにビュー固有でなければなりませんか?
のは、私がInboxItemViewModel呼ばInboxItemViewと対応するビューモデルと呼ばれるビューを持っているとしましょう。私は、モデル内のプロパティは、IsUnreadがtrueの場合、受信トレイのアイテムがビューに太字として表示します。
私の質問は、それは
public bool IsUnread {
get { return _model.IsUnread; }
}
のようなプロパティを公開し、ビューに値コンバータを使用することが望ましいですか?または、VMが太字のテキストを直接表示すると、
public FontWeight IsUnread {
get { return _model.IsUnread ?? FontWeights.Bold : FontWeights.Normal; }
}
となり、ビューのこのプロパティに直接バインドする必要がありますか?明らかにこれらの両方は正常に動作しますが、MVVMで一般に受け入れられている方法は何ですか?