0

SL4、MVVM。MainViewには、対応するMainViewModelがDataContextとしてあります。
MainViewModelには、プロパティのThingViewModel(CurrentThingViewModel)があります。

MainViewのCheckBoxをThingViewModelのプロパティにバインドします。

<CheckBox IsChecked="{Binding CurrentThingViewModel.ReadOnly, Mode=TwoWay}" />

異なるThingViewModelがCurrentThingViewModelに割り当てられると、CTVMはPropertyChangedイベントを発生させます。CheckBoxはCTVMのプロパティにバインドされており、実際にPropertyChangedイベントを発生させるプロパティではないため、通知を受け取りますか?

洞察をありがとう...

4

1 に答える 1

0

はい、バインディングは提供されたバインディングのすべてのレベルでPropertyChangedイベントをリッスンします。最初のレベルのバインディングが更新されている場合、すべての下位レベルのバインディングもトリガーされます。

<CheckBox IsChecked="{Binding X.Y.Z, Mode=TwoWay}" />

PropertyChangedイベントがX、Y、またはZのいずれかで発生した場合、バインディングはXYZの値をチェックします

于 2012-06-26T03:47:38.523 に答える