<?xml version="1.0" encoding="utf-8"?> <!-- http://blog.flexexamples.com/2008/04/05/opening-branches-by-clicking-rows-in-a-tree-control-in-flex/ --> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" verticalAlign="middle" backgroundColor="white" viewSourceURL="srcview/index.html"> <mx:Script> <![CDATA[ import mx.collections.ICollectionView; import mx.events.ListEvent; private function tree_itemClick(evt:ListEvent):void { var item:Object = Tree(evt.currentTarget).selectedItem; if (tree.dataDescriptor.isBranch(item)) { tree.expandItem(item, !tree.isItemOpen(item), true); } } private function tree_labelFunc(item:XML):String { var children:ICollectionView; var suffix:String = ""; if (tree.dataDescriptor.isBranch(item)) { children = tree.dataDescriptor.getChildren(item); suffix = " (" + children.length + ")"; } return item[tree.labelField] + suffix; } ]]> </mx:Script> <mx:XML id="dp"> <root> <folder label="One"> <folder label="One.A"> <item label="One.A.1" /> <item label="One.A.2" /> <item label="One.A.3" /> <item label="One.A.4" /> <item label="One.A.5" /> </folder> <item label="One.1" /> <item label="One.2" /> </folder> <folder label="Two"> <item label="Two.1" /> <folder label="Two.A"> <item label="Two.A.1" /> <item label="Two.A.2" /> </folder> </folder> </root> </mx:XML> <mx:Tree id="tree" dataProvider="{dp}" showRoot="false" labelField="@label" labelFunction="tree_labelFunc" width="300" rowCount="6" itemClick="tree_itemClick(event);" /> </mx:Application>
Flex的树形控件(Tree Control)中如何通过点击行进行展开/缩进的例子
最新推荐文章于 2023-11-29 17:19:06 发布