1
votes

How to set tree label clickable so tree node can expand? (not only click on arrow icon)

1

1 Answers

2
votes

Solved.

<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);
            }
        }

]]>

<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>
    </root>
</mx:XML>

<mx:Tree id="tree" dataProvider="{dp}" showRoot="false"  labelField="@label" width="300" rowCount="6"
        itemClick="tree_itemClick(event);" />