我在演示者中有一个对象连接到视图.在我的XAMTL中,我具有以下内容:
<Label Content="{Binding ElementName=PSV, Path=Presenter.Portfolio.Name}"/>
现在,在创建控件时,Portfolio为null,然后运行另一个设置Portfolio的方法.我已经实现了INotifyPropertyChanged,但是到目前为止,我还无法触发连接到绑定.
有人可以给我提示吗?我可以绑定到物业的物业吗?
解决方法:
绑定始终与您需要将Presenter设置为本地DataContext的DataContext一起使用.例如,您可以在Window或UserControl的构造函数中执行此操作:
this.DataContext = new Presenter();
您的绑定将更改为:
<Label Content="{Binding ElementName=PSV, Path=Portfolio.Name}"/>
您以前的路径的Presenter部分在DataContext中是隐式的.
这样,DataContext会监视NotifyChanged事件,并且当Portfolio从null变为具有值时,它将正确更新视图.
在回答问题的最后一部分时,绑定到属性的属性确实有效.