在flex 3中,我有一个分层数据结构。我想在树中显示它的内容。我的问题是我有节点从子节点计算的数据。如果孩子的数据发生了变化,如何构建层次结构以自动更改这些父节点? 例如:
是否有一个简单的解决方案,可以自动进行良好的结构更改,或者我必须制作一些自定义函数?
谢谢!
答案 0 :(得分:0)
我们按照这种模式来做到这一点:
这会导致任何正在观看父级聚合属性的UI在更新子级时都会更新。
以下是一个例子:
public class Parent
{
private var children:ArrayCollection = new ArrayCollection();
public function Parent()
{
children.addEventListener(
CollectionEvent.COLLECTION_CHANGE,
function(evt:CollectionEvent):void
{
if (...)
{
dispatchEvent(new Event("warningStateChanged"));
}
}
);
}
[Bindable("warningStateChanged")]
public function containsWarnings():Boolean
{
for each (var child:Child in children)
{
if (child.hasWarning)
{
return true;
}
}
return false;
}
}