<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="vertical"
verticalAlign="middle"
backgroundColor="white" viewSourceURL="srcview/index.html">
<mx:Script>
<![CDATA[
private function openSomeNodes():void {
var xList:XMLList = dp..node.(hasOwnProperty("@isOpen") && @isOpen == "true");
tree.openItems = xList;
}
private function closeAllNodes():void {
tree.openItems = [];
}
]]>
</mx:Script>
<mx:XML id="dp">
<root>
<node label="Parent 1" isOpen="true">
<node label="Child 1" />
<node label="Child 2">
<node label="Grandchild 1" />
<node label="Grandchild 2" />
</node>
<node label="Child 3" />
<node label="Child 4" isOpen="true">
<node label="Grandchild 3">
<node label="Great-grandchild 1" />
<node label="Great-grandchild 2" />
<node label="Great-grandchild 3" />
<node label="Great-grandchild 4">
<node label="Great-great-grandchild 1" />
</node>
<node label="Grandchild 1" />
</node>
<node label="Grandchild 4" />
</node>
<node label="Child 5" />
</node>
</root>
</mx:XML>
<mx:ApplicationControlBar dock="true">
<mx:Button label="Open some nodes" click="openSomeNodes();" />
<mx:Button label="Close all nodes" click="closeAllNodes();" />
</mx:ApplicationControlBar>
<mx:Tree id="tree"
dataProvider="{dp}"
showRoot="false"
labelField="@label"
width="300" />
</mx:Application>