Flex Tree节点的添加、删除

<?xml version="1.0" encoding="utf-8"?>

<mx:Canvas xmlns:mx="http://www.adobe.com/2006/mxml" xmlns:flexlib="http://code.google.com/p/flexlib/" width="100%" height="100%" >

<mx:Style>
.datagridStyle
{
alternatingItemColors: #666666, #666666;
rollOverColor: #ff9933;
textRollOverColor: #000000;
selectionColor: #ff6600;
color: #ffffff;
textSelectedColor: #0b333c;
}

.dataGridHeader
{
color: #000000;
}
</mx:Style>
<mx:Script>

<![CDATA[
public var str:String;
public function set Str_par(str:String ){
this.str=str;
}
import compnent.reporting.group_manager.vo.TreeGridSampleVO;
import mx.collections.ArrayCollection;






import mx.controls.Alert;
private var xml:XML;
private var MNum:int = 0;
private var ANum:int = 0;

public var i:int = 0;
[Bindable]
private var _xmldata:XML =
<stage>
<AllNode id="0" label="总节点">

</AllNode>
</stage>


//添加
private function addNode():void
{
//判断选择的是否是Node节点

if( xml.length() > 0 )
{
MNum ++;
var _XML:XML = <Node label="子节点" ></Node>
_XML.@label = "子节点"+MNum;
xml.appendChild(_XML);
Alert.show(xml);
}

}

//删除
private function removeNode():void
{

if(!myTree.selectedItem.parent().hasOwnProperty("AllNode")){
myTree.dataDescriptor.removeChildAt(myTree.selectedItem.parent(),myTree.selectedItem,myTree.selectedItem.childIndex(),myTree.dataProvider);
}else{
Alert.show("不能删除根节点","系统提示");
}

}

/******选择tree节点事件********/
private function treeChanged(e:Event):void
{



xml = e.currentTarget.selectedItem as XML;

// Alert.show(str);
// Alert.show(datatree.);
}
]]>
</mx:Script>
<mx:XMLListCollection id="datatree" source="{_xmldata.children()}" />
<mx:VBox width="100%" height="100%">
<mx:HBox width="100%" height="5%" >
<mx:Label text="业务分组管理" fontSize="14" />

</mx:HBox>


<mx:ViewStack id="myViewStack" borderStyle="solid" width="100%" height="80%" color="0x323232">

<mx:VBox width="100%" height="100%">
<mx:HBox width="100%" height="90%" >
<mx:Tree id="myTree" width="100%" height="100%" labelField="@label" styleName="datagridStyle"
change="treeChanged(event)" showRoot="false" dataProvider="{datatree}" doubleClickEnabled="true" backgroundAlpha="0.1" disclosureClosedIcon="@Embed(source='../assets/tree_openNode.png')" disclosureOpenIcon="@Embed(source='../assets/tree_closeNode.png')">
</mx:Tree>
</mx:HBox>

<mx:HBox width="100%" height="10%" paddingLeft="450">

<mx:Button label="添加" click="addNode()" />
<mx:Button label="修改"/>
<mx:Button label="删除" click="removeNode()"/>

</mx:HBox>
</mx:VBox>



</mx:ViewStack>
</mx:VBox>

</mx:Canvas>

你可能感兴趣的:(Flex)