Mvvm SL4:ViewModel上的Databind to属性,当ViewModel更改时是否通知绑定对象?

Mvvm SL4:ViewModel上的Databind to属性,当ViewModel更改时是否通知绑定对象?,mvvm,silverlight-4.0,Mvvm,Silverlight 4.0,SL4,MVVM。我们的MainView有一个对应的MainViewModel作为其DataContext。 MainViewModel有一个属性ThingViewModel——CurrentThingViewModel 我们将MainView中的复选框绑定到ThingViewModel的属性: <CheckBox IsChecked="{Binding CurrentThingViewModel.ReadOnly, Mode=TwoWay}" /> 将不同的ThingView

SL4,MVVM。我们的MainView有一个对应的MainViewModel作为其DataContext。
MainViewModel有一个属性ThingViewModel——CurrentThingViewModel

我们将MainView中的复选框绑定到ThingViewModel的属性:

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

将不同的ThingViewModel分配给CurrentThingViewModel时,CTVM将引发PropertyChanged事件。复选框是否得到通知,因为它绑定到CTVM的属性,而不是实际引发PropertyChanged事件的属性


感谢您提供的任何见解…

是的,绑定将侦听所提供绑定的所有级别上的PropertyChanged事件,如果第一级绑定正在更新,则所有较低级别的绑定也将被触发

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


如果在X、Y或Z上触发PropertyChanged事件,则绑定将检查X.Y.Z的值

一个非常简单的项目的实验表明,当为CTVM分配不同的ThingViewModel时,绑定到CTVM.ReadOnly的视图将被更新。一定还有别的事情发生了——可能有点混乱,因为checkbox.IsChecked是以编程方式设置的,也是由用户设置的?