【发布时间】:2011-11-28 10:20:12
【问题描述】:
我有一个类ViewModel,它有一个MyList 类型为BindingList<Foo> 的属性。
ViewModel 实现 INotifyPropertyChanged。
Foo 具有属性FooProp。
Foo 实现INotifyPropertyChanged
ViewModel 有这个属性:
public bool IsButtonEnabled
{
get
{
return MyList.Any(x=> x.FooProp!=null);
}
}
我有一个带有按钮的视图。按钮的 Enabled 属性绑定到 IsButtonEnabled。
但是当MyList 的元素设置为FooProp 时,按钮不会启用。我注意到 ViewModel 不会在这里触发 PropertyChanged 事件。为什么不?我应该如何让视图模型注意到它的 IsButtonEnabled 属性实际上已经改变了?
【问题讨论】:
-
你能把剩下的代码贴出来吗?所有的 FooProps 都应该不是 null 还是只有一个?
标签: c# .net data-binding collections