私の WPF アプリケーションでは、値CheckBoxがIsCheckedビューモデルのプロパティにバインドされています。ビューモデルで値を設定する実際の行をコメントアウトしたことに注意してください。それは標準的なパターンです:
View.xaml
<CheckBox IsChecked="{Binding Path=SomeProperty}" />
ViewModel.cs
public bool SomeProperty
{
get { return this.mSomeProperty; }
set
{
if (value != this.mSomeProperty)
{
//this.mSomeProperty = value;
NotifyPropertyChanged(new PropertyChangedEventArgs("SomeProperty"));
}
}
}
をクリックしてCheckBoxも、 の値が設定されないため、何も起こらないと思いますthis.mSomeProperty。ただし、観察された動作はCheckBox、 の値に関係なく、 がチェックされたりチェックされなかったりすることですthis.mSomeProperty。
何が起こっている?CheckBoxバインディングが、基になるデータ モデルの設定を表示するように強制しないのはなぜですか?