Flex的树形控件(Tree Control)中如何通过点击行进行展开/缩进的例子

来源:互联网 发布:程序员的职业规划 编辑:程序博客网 时间:2024/05/22 07:49
<?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>
原创粉丝点击