Data Model Flex



    xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx">
    
        
    

     
         
        import mx.collections.XMLListCollection; 
        [Bindable] 
        private var company:XML = 
                 
                 
                 
                 
                 
                 
                 
                 
                 
                 
                 
                 
                 
                

        [Bindable] 
        private var companyData:XMLListCollection = new XMLListCollection(company.department); 
        private function treeLabel(item:Object):String { 
            var node:XML = XML(item); 
            if( node.localName() == "department" ) 
                return node.@title; 
            else 
                return node.@name; 
        } 
        private function addEmployee():void { 
            var newNode:XML = 
            newNode.@name = empName.text; 
            var dept:XMLList =company.department.(@title == "Operations"); 
            if( dept.length() > 0 ) { 
                dept[0].appendChild(newNode); 
                empName.text = ""; 
            } 
        } 
        private function removeEmployee():void { 
            var node:XML = XML(tree.selectedItem); 
            if( node == null ) 
                return; 
            if( node.localName() != "employee" ) 
                return; 
            var children:XMLList = XMLList(node.parent()).children(); 
            for(var i:Number=0; i < children.length(); i++) { 
                if( children[i].@name == node.@name ) { 
                    delete children[i]; 
                } 
            } 
        } 
      
    

            labelFunction="treeLabel" height="225" width="300" />