【发布时间】:2012-03-26 15:32:16
【问题描述】:
我有以下类结构
class Top : NotifyPropertyChanged
{
private List<Inner> innerList;
public bool IsInnerTrue
{
get
{
foreach (Inner inner in innerList)
{
if (inner.IsTrue)
return true;
}
return false;
};
}
}
class Inner : NotifyPropetyChanged
{
private bool isTrue;
public bool IsTure
{
get
{
return isTrue;
}
set
{
isTrue = value;
NotifyPropretyChanged("IsTrue");
}
}
}
在我看来,我绑定到 Top 类的 IsInnerTrue 属性。我的问题是,当 Inner 对象之一的 IsTrue 属性更改值时,我无法弄清楚如何为 IsInnerTrue 触发 PropertyChanged 事件。
除了为每个 Inner 对象设置事件处理程序之外,是否有人有建议?
【问题讨论】:
-
这正是您需要做的。在每个 Inner 上订阅 PropertyChanged 并做出相应的反应。
-
同意。也使用 IsInnerTrue { get{ return innerList.All(IsTrue); }
-
谢谢。我希望有一种不那么复杂的方法。
标签: wpf data-binding inotifypropertychanged