我有一个名为IsVisible
的属性:
public new bool IsVisible
{
get { return base.IsVisible; }
set
{
base.IsVisible = value;
this.RaisePropertyChanged ( "IsVisible" );
}
}
因此,当true
中所选项目的鼠标左键按下时,此属性设置为TreeView
。它工作正常,但我也有一个CheckBox
我试图绑定到同一个属性,双向。因此,每当我通过鼠标左键改变此属性时,CheckBox
显示IsVisible状态,如果它是真的。所以这部分有效。
但问题是,每当我将一个实例的this属性设置为true时,所有其他图层的IsVisible
属性都设置为false,但CheckBox
es不显示更改。他们仍然看起来已经检查过了。
所以每当我说:
layer.IsVisible = true;
基类将所有其他层设置为false,我无法访问源代码(如上所示)。
如何让我的应用识别出这种变化?
答案 0 :(得分:2)
所以你隐藏了基类的IsVisible属性,它没有实现INotifyPropertyChanged?所有复选框都绑定到您的班级(而不是基础)?
您是否可以通过迭代必要的层并对您自己的属性进行相同的更改(显然DO通知)来模仿基类的行为?