この行を読んだとき:
ビューモデルは、モデルだけでなく、他のプロパティ (「ビジー」インジケーターなどの状態情報など) とコマンドも公開します。
http://www.codeproject.com/Articles/100175/Model-View-ViewModel-MVVM-Explained
ビューの現在の設定をビューのプロパティまたは状態の一部と見なしてビューモデルに配置する必要があるかどうか疑問に思っています。
たとえば、現在、ビューモデルにバインドされた一連のカラーピッカーを含む現在の色を含むビューモデルにバインドされた設定ウィンドウがあります。コマンドは変更をキャンセルし、[OK] または [キャンセル] をクリックすると古い設定を再適用します。
現在の色は代わりにビューのプロパティにする必要がありますか、それとも現在の場所は問題ありませんか?
public class PreferencesWindowViewModel:DependencyObject
{
private DelegateCommand updatePreferencesCommand;
public ICommand UpdatePreferencesCommand
{
get { return updatePreferencesCommand; }
}
private DelegateCommand cancelCommand;
public ICommand CancelCommand
{
get { return cancelCommand; }
}
public Color HighValuePenColor
{
get { return (Color)GetValue(HighValuePenColorProperty); }
set
{
SetValue(HighValuePenColorProperty, value);
}
}