Hi helper,
I have an Hirarchy data grid, I actualy took the adobe sample
http://inovativeflexdevolopment.blogspot.com/
What is does is creating ObjectHierarchicalData that implements 
IHierarchicalData.
the dataprovider is set accordingly and all looks great.
In my grid I can see the parents and all its sub parent and childrens.
My problem is when I want to use columns ItemRenderer(cellValueRenderer).

public class cellValueRenderer extends HBox implements IDropInListItemRenderer
        {                                                       
                private var _listData:DataGridListData;
                private var updatedDP:ArrayCollection;
                public var adg:AdvancedDataGrid=new AdvancedDataGrid();
                private var ohd:ObjectHierarchicalData;
                public function cellValueRenderer():void{
                        
                        super();
                
                }
        
                override public function set data(value:Object):void
                {
                        if(value != null)
                        {
                                super.data = value;
                                removeAllChildren();
                                
                                var label:Label =new Label();
                                label.text = 
value[DataGridListData(listData).dataField];
                                addChild(label);                                
                
                                                                                
                                
                        }
                }
                override public function get data():Object {
            return super.data;
        }            
                        
        public function get listData():BaseListData
        {
            return _listData;
        }
 
        public function set listData(value:BaseListData):void
        {           
             _listData = DataGridListData(value);
        } 
     
                override protected function commitProperties():void{
                        super.commitProperties();
                }
 
        }
}

I add this to my AS:

var rendererProviders:Array = new Array();
rendererProviders = setRendererProvider();                                      
for each(var ItemRenderer:AdvancedDataGridRendererProvider in 
rendererProviders){                               
this.resultTBLADG.rendererProviders.push(ItemRenderer);
}

columns.addItem("name");
columns.addItem("op1");
columns.addItem("op2");
columns.addItem("op3");
columns.addItem("op4");
columns.addItem("op5");
var rendererProvider:AdvancedDataGridRendererProvider;
var rendererProviders:Array = new Array();
for (var i:int = 0; i < columns.length; i++){
        var colName:String = columns.getItemAt(i) as String;
        rendererProvider = new AdvancedDataGridRendererProvider();
                                                rendererProvider.columnIndex=i; 
                                        
        var renderer_:IFactory= new ClassFactory(cellValueRenderer);
                                                        
rendererProvider.renderer= renderer_;  
                                                
rendererProvider.dataField=colName;
        rendererProviders.push(rendererProvider);
}
return rendererProviders;
}


On my grid I can see the parent folder, but when I click (the Itemrenderer is 
activated)
I see the children but flat without the hirarchy:( although the parent have sub 
parents, it doesnt show it.
I guess its because I added a Label each time.

How can I use the set data() that will show me all hirarchy of the tree?
Label is no good here.

I need to use the exact DataSource in the example (with parent & child 
attributes)

I realy need your help.....

Thanks a lot

Jo

Reply via email to