AdvancedDataGrid Item Renderer Problem

I have a problem in AdvancedDataGrid Item Renderer.
The Grid is having dynamic add/remove row functionality and the first column I having an Item Renderer.
I am facing a problem when I add and remove row from the grid. The item Renderer.
is misplaced in different row.
If you click on the node new row will get added. (only by clicking Asset Sale & CDS node, not for other nodes).
Try clicking more than 6 times then do delete row you can see the problem.
Please find the attachment for code sample.
I have been trying this out for quiet some time. But no hope.
Can any one solve this issue?
Thax
Tamil Selvan

Sorry, I forgot to tell the file in the attached zip.
THe file name is: ActionPlanTest.html

Similar Messages

  • Flex Mobile List Item Renderer problems

    i have flex mobile list created with item renderer,i remove individual item in flex mobile list,it is worked very well,but some times i double click action or another scroll event using in list, last item doesn't delete in flex mobile list.it is repeated again and again.so anyone this problem faced,give me a solution.
    i expect your feedback.Thanking You

    Hi Alex,
    I've searched a lot for that post (on this forum and on google). Not sure if this is the post you were talking about: http://tech.groups.yahoo.com/group/flexcoders/message/161146
    I have fixed the setter of the data not to also manage the state (I figured it was inappropriate there)... overrode the getCurrentRendererState, I'm managing the state staight from the data. When I run the following... All sold items show as sold... and normal states show as normal. When I try to hover over the normal state, it dosen't play the hovered state, and when I click to the selected state. These built in states don't work.
    override public function set data(value:Object):void {
         super.data = value;
         ticketNumber_ti.text = value.slots_id;
    override protected function getCurrentRendererState():String {
         var state:String;
         if (data.date_purchased != null) {
              state = 'sold';
              mouseChildren = false;
              mouseEnabled = false;
         }  else {
              state = 'normal';
              mouseChildren = true;
              mouseEnabled = true;
         return state;
    On another note, the states only update, once I start scrolling, everything updates... I tried to validateDisplayList() to the List after setting the dataProvider with no luck.
    Once I find a solution I will certainly add it to my Blog as I have not found a lot of solutions for this problem.
    Any help is grteatly appreciated.

  • Can I make a copy of an AdvancedDataGrid Item Renderer?

    I have manual drag-and-drop functionality built in to my
    AdvancedDataGrid (ADG). Right now, I am building my own custom drag
    proxy using a Container instance and grabbing the text to use from
    the "selectedItem" property. This creates a suitable image to drag.
    However, what I'd really like to do is have the drag proxy look
    exactly like the item renderer of the item I'm dragging. I don't
    want the whole row, though, only one cell - that's why I can't use
    the ADG's "dragImage" property. When I run the code below to
    attempt to make a copy of the itemRenderer instance, the
    itemRenderer in the ADG for the source item is cleared out - the
    label disappears. Is there some way to make just a "copy" of the
    itemRenderer instance, so that it doesn't disappear from the
    ADG?

    "ericbelair" <[email protected]> wrote in
    message
    news:gecebe$17j$[email protected]..
    >I have manual drag-and-drop functionality built in to my
    AdvancedDataGrid
    > (ADG). Right now, I am building my own custom drag proxy
    using a Container
    > instance and grabbing the text to use from the
    "selectedItem" property.
    > This
    > creates a suitable image to drag. However, what I'd
    really like to do is
    > have
    > the drag proxy look exactly like the item renderer of
    the item I'm
    > dragging. I
    > don't want the whole row, though, only one cell - that's
    why I can't use
    > the
    > ADG's "dragImage" property. When I run the code below to
    attempt to make a
    > copy
    > of the itemRenderer instance, the itemRenderer in the
    ADG for the source
    > item
    > is cleared out - the label disappears. Is there some way
    to make just a
    > "copy"
    > of the itemRenderer instance, so that it doesn't
    disappear from the ADG?
    >
    > // This is the container I use for my dragProxy
    > var proxyBox:VBox = new VBox();
    >
    > for each (var item:Object in this.selectedItems)
    > {
    > var selectedItemRenderer:IListItemRenderer =
    > super.itemToItemRenderer(item);
    >
    > proxyBox.addChild(DisplayObject(selectedItemRenderer));
    > }
    The itemRenderer is made by the ADG using the ClassFactory of
    the
    itemRenderer class.
    I think you can search for the appropriate ClassFactory for
    that column,
    then make a new renderer from that Factory. Set its data
    and/or listData to
    the same as the existing renderer.
    This might look something like this:
    var factory:IFactory;
    var renderer:IListItemRenderer;
    //populate factory with the appropriate renderer factory
    //you need to do this part
    factory=?;
    renderer = factory.getInstance();
    renderer.data=selectedItemRenderer.data;
    renderer.listData=selectedItemRenderer.listData;
    proxyBox.addChild(DisplayObject(renderer));
    You also might find that you can shortcut this by using new
    (getDefinitionByName(selectedItemRenderer.className)) instead
    of the
    factory.
    HTH;
    Amy

  • Datagrid and Inline Item renderer problem

    I have a datgrid with two inline item renderers. The dataprovider for my DG is a nested object (objects within objects within objects i.e 3-layered).
    Main Object - 1st Level
                              |
                  2nd Level Object 1
                                    |
                                3rd level object '1' => ('name'=>somename,'id'=>someid)
                                3rd level object '2'
                                3rd level object 'n'
                 2nd Level Object 2
                                    |
                                3rd level object '1' => ('name'=>somename,'id'=>someid)
                                3rd level object '2'
                                3rd level object 'n'
    I use 2 item renderers (one for each datagrid column) which loops thro the 2nd level object1 and 2 respectively (the 2nd level object is a dynamic array of objects, in that the number of objects within keep changing).
    Within the item renderer I loop thro the 2nd level object using a foreach and then display the data. The data is a linkbutton, which when clicked , calls a remote object function to delete the data from the database
    now on the result event of the remote object function call, i call the function to repopulate the DG, so that the updated data is displayed.
    When i click on the linkbutton in the first row, the backend works perfectly fine (the data gets deleted from the database and the refreshed data is sent back), but for some reason, the deleted data suddenly appears in the 2nd row.
    When i delete it from the second row, it appears on the 3rd row (nothing happens in the backend since the data is already deleted).. and so on, till it appears on the last row and then the DG looks exactly the way it shld have looked after the first delete.
    This is just the beginning. The second item renderer also displays a linkbutton, which when clicked, displays that data in the previous column (the one where this data can be deleted). When i click on 1st row, the data gets added in the previous column of the second row .. and so on..
    Basically, my DG is acting really weird. I overrided the set data function in the item renderer to refrsh the data and called its invalidateDisplayList. I also call the Datagrid's invalidateDisplayList function after each refresh.  The behavior remains the same.
    Please help me on this ...

    Hi, Post a test code.... It will be a lot easier to help you Mich

  • ColumnChart - 3D Item Renderer problem

    I'm building a 3D column chart and am finding that I need to
    draw the columns in a specific order other than the default, which
    appears to be by series.
    Things go just fine until the z-order depth is greater than
    the distance between the series. Once that occurs, the potential
    exists for things to go south.
    To demonstrate the issue, I've put a few screenshots here:
    3D Column Chart
    Images
    My question: Is there a way to define, or otherwise take over
    the drawing order of the ColumnSeriesItems? I want to draw the
    columns in the order they appear from left to right, but Flex seems
    to want to draw by order of series - first Series1, then Series2,
    then Series3, etc.
    I'm looking through the Framework source code, but I haven't
    found a way around this - yet. Of course, if there's another
    approach, like using some clipping method I'm not aware of, etc,
    please feel free to clue me in.
    Thanks in advance to anyone with useful info.

    Thanx for reply.But this is not what i am looking for.I need
    to apply different colors for each bars.I am generating charts
    dynamically.The item renderer is working fine.But at specific
    condition the item renderer shold ne removed from the chart series

  • Datefield as Item renderer problem

    I am having problems with the datefield while using it in a
    renderer. If you click the text area of the datefield to bring up
    the datechooser everything works, if you click the datefield icon
    the date is not bound properly.
    Try out the code below and you will see what I am talking
    about. Any idea what im doing wrong?
    dateRenderer.mxml
    <?xml version="1.0" encoding="utf-8"?>
    <mx:VBox xmlns:mx="
    http://www.adobe.com/2006/mxml"
    creationComplete="{newDate = data.Date}">
    <mx:Script>
    <![CDATA[
    import mx.events.DataGridEvent;
    import mx.binding.utils.ChangeWatcher;
    import mx.formatters.DateFormatter;
    // Define a property for returning the new value to the
    cell.
    [Bindable]
    public var newDate:Date;
    private var df:DateFormatter = new DateFormatter();
    private function test(event:Event):void {
    trace(df.format(dateFieldTI.selectedDate));
    newDate= new Date(dateFieldTI.text);
    this.dispatchEvent(new
    DataGridEvent(DataGridEvent.ITEM_EDIT_END, true, false, 0,
    "newDate", -1, null, this));
    ]]>
    </mx:Script>
    <mx:DateField id="dateFieldTI"
    showToday="false"
    selectedDate="{newDate}"
    text="{df.format(newDate)}"
    click=""
    change="test(event)"/>
    </mx:VBox>
    /////////////////////////////////////////// dateRenderer.mxml
    File///////////////////////////////////////////////////////
    /////////////////////////////////////////////// Begin
    application ///////////////////////////////////////////////////
    <mx:Application xmlns:mx="
    http://www.adobe.com/2006/mxml"
    height="700" width="700">
    <mx:Script>
    <![CDATA[
    import mx.collections.ArrayCollection;
    [Bindable]
    private var initDG:ArrayCollection = new ArrayCollection([
    {Date: new Date("3/14/2007")},
    {Date: new Date("3/14/2007")}]);
    [Bindable]
    public var displayedDate:String;
    private function getDate():void {
    displayedDate = initDG[0].Date;
    ]]>
    </mx:Script>
    <mx:DataGrid id="myDG"
    width="500" height="250"
    dataProvider="{initDG}"
    variableRowHeight="true"
    editable="true">
    <mx:columns>
    <mx:DataGridColumn dataField="Date"
    width="200"
    editable="true"
    rendererIsEditor="true"
    itemRenderer="dateRenderer"
    editorDataField="newDate"/>
    </mx:columns>
    </mx:DataGrid>
    <mx:Button label="getIt" click="getDate()"/>
    <mx:Text text="{displayedDate}"/>
    </mx:Application>

    Hi Proeliata ,
    I am using mx.controls.DateField as itemRenderer in the
    DataGridColumn as Below.
    <mxataGrid
    id="dgDetailsContainer" dataProvider="{alphaGroups}"
    variableRowHeight="true"
    sortableColumns="true" editable="true" width="100%"
    itemEditEnd="editGrid(event)">
    <mx:columns>
    <mxataGridColumn
    headerText="ETA Date" itemRenderer="mx.controls.DateField"
    editorDataField="selectedDate"
    rendererIsEditor="true"
    editable="true" dataField="EtaDate" />
    </mx:columns>
    </mxataGrid>
    While I was submitting the dataGrid values If I try to alert
    the EtaDate using the below call
    I am getting null value always.
    private function submitChanges():void
    try{
    Alert.show("EtaDate0 is"+alphaGroups[0].EtaDate);
    Alert.show("EtaDate1 is"+alphaGroups[1].EtaDate);
    commonWebService.submitChanges(alphaGroups);
    }catch(err:Error){
    Alert.show("Please choose Title and Alpha");
    Please help me to re-solve,If any one handled this scenario
    please provide me the sample code to update dataProvider.
    Back to top
    Thanks,
    Ravindra

  • Item renderer problem

    I don't seem to have the correct syntax for adding a check box to a datagrid.  Here is what I have:
    <cust:MyAdvancedDataGrid
    id="dgData"
    width="100%" height="85%"
    textAlign="center"
    fontWeight="normal"
    dataProvider="{custVO}"
    selectionMode="singleCell"
    accessibilityName="Case Composition, DataGrid, use arrow keys to navigate between cells">
    <cust:columns>
    <mx:AdvancedDataGridColumn
    headerText="Select"
    rendererIsEditor="true"
    width="100">
    <mx:itemRenderer>
    <fx:Component>
    <s:CheckBox selected="false"/>
    </fx:Component>
    </mx:itemRenderer>
    </mx:AdvancedDataGridColumn>
    This was based on a google search.
    What is the correct format?

    I had no idea this was such a hard question that no one had done one of these.
    Also, if anyone knows why a cut and paste in here produces such a goofy table please let me know.

  • Problem with checkbox item renderer in datagrid

    I have a data grid having check box as an item renderer. I have viewed many posts in this forum but nothing useful in my case. I am failed to bind my datagrid itemrenderer checkbox with the field of dataprovider i.e. listUnitMovement.CHECK_PATH. Then I have to traverse data provider to check which checkboxes are checked.
    [Bindable]
    var listUnitMovement:XMLList=null;                      
    In a function call
    public function init(event:ResultEvent):void
        listUnitMovement=event.result.unitmovement;
         <mx:DataGrid id="dg_country"
                               dataProvider="{listUnitMovement}"
                                  enabled="true">
                                <mx:columns>
                                   <mx:DataGridColumn>
                                        <mx:itemRenderer>
                                            <mx:Component>
                                                <mx:CheckBox selectedField="CHECK_PATH"  />
                                            </mx:Component>                                       
                                        </mx:itemRenderer>
                                    </mx:DataGridColumn>
                                    <mx:DataGridColumn headerText="Latitude" dataField="NEW_LAT" visible="false"/>
                                    <mx:DataGridColumn headerText="Longitude" dataField="NEW_LONG" visible="false"/>
                                   <mx:DataGridColumn>
                                        <mx:itemRenderer>
                                            <mx:Component>
                                                <mx:Button label="Details"/>
                                            </mx:Component>                                       
                                        </mx:itemRenderer>
                                    </mx:DataGridColumn>
                                </mx:columns>
                            </mx:DataGrid>

    Hi,
    Do you want to just check/uncheck the checkboxes based on the CHECK_PATH field.
    Do you want something like this...
    <?xml version="1.0" encoding="utf-8"?><mx:Application  xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
     <mx:Script>
    <![CDATA[
     import mx.collections.ArrayCollection;[
    Bindable] 
    private var listUnitMovement:ArrayCollection = new ArrayCollection([{CHECK_PATH:true,NEW_LAT:109.233,NEW_LONG:232.22},{CHECK_PATH:true,NEW_LAT:109.233,NEW_LONG:232.22},{CHECK_PATH:false,NEW_LAT:133.233,NEW_LONG:702.22}]);]]>
    </mx:Script>
     <mx:DataGrid dataProvider="{listUnitMovement}">
     <mx:columns>
     <mx:DataGridColumn>
     <mx:itemRenderer>
     <mx:Component>
     <mx:CheckBox selectedField="CHECK_PATH" change="data.CHECK_PATH=selected" />
     </mx:Component>  
    </mx:itemRenderer>
     </mx:DataGridColumn>
     <mx:DataGridColumn dataField="NEW_LAT"/>
     <mx:DataGridColumn dataField="NEW_LONG"/>
     </mx:columns>
     </mx:DataGrid>
    </mx:Application>
    Please let me know clearly what's your problem...Do you want to just bind the check box based on XmlList or something else..?
    Thanks,
    Bhasker Chari.S

  • Data provider problem in custom item renderer

    I have a complex, custom item renderer for a list. I add
    items that I extracted from an xml to the data provider using the
    IList interface. But when displaying the list, the items are all
    screwed up. Each rendered item has some parts which are initialized
    as different components depending on the values from the xml. This
    initialization is called in the item renderer for the
    creationComplete event.
    The weird thing is that when I output the dataProvider to
    check its values, some of the items have internal uids sometimes
    and sometimes they don't. If I output the dataProvider right after
    I add the items to it, none of them get internal uids. But from the
    initialize method, some of them do and some don't.
    To make things weirder, sometimes, as I scroll up and down
    the list, the dynamic components get all switched up. I'm either
    having a problem with internal uids or with the creation policies
    for lists. Or it's probably some simpler mistake I have yet to see.
    Anyone have any idea where the problem could lie? Any help is
    greatly appreciated.

    Any successful render must:
    1) override the set data property of the component
    Further, best practice is to store any data you need in the
    override set data(), and call invalidateProperties(). Then do the
    actual work in an override commitProperties() function.
    The framework is smart about when to call commitProperties
    efficiently. set data() gets called much more often.
    Tracy

  • DataGrid Horizontal Scroll Problem when datagrid contains Item renderer

    I have datagrid with horizontal scroll policy enabled. Grid
    contains some item renderer also.One of the item renderer is
    datefield when i select a date from the datefield and say the
    adjacent cell of the grid also contain datefield itemrenderer
    and i am selecting date from that itemrenderer also.When i
    scroll horizontally the date in the itemrender changes to any one
    of the two itemrenderer.Some time it works fine.I am getting the
    issue for combobox itemrender also.Can any one help me to solve
    this issue.

    "happybrowndog" <[email protected]> wrote in
    message
    news:ge11ag$jdo$[email protected]..
    >
    quote:
    Originally posted by:
    ravi_bharathii
    > I have datagrid with horizontal scroll policy enabled.
    Grid contains some
    > item
    > renderer also.One of the item renderer is datefield when
    i select a date
    > from
    > the datefield and say the adjacent cell of the grid also
    contain datefield
    > itemrenderer
    > and i am selecting date from that itemrenderer also.When
    i scroll
    > horizontally
    > the date in the itemrender changes to any one of the two
    itemrenderer.Some
    > time
    > it works fine.I am getting the issue for combobox
    itemrender also.Can any
    > one
    > help me to solve this issue.
    >
    > Ravi, I am having a similar problem. I subclass a
    TextInput as an
    > itemrenderer for a column in a datagrid. My subclassed
    TextInput checks
    > to see
    > the value in the overriden set() method, and depending
    on the value, sets
    > the
    > background color of the TextInput to green. When the
    datagrid scrolls
    > horizontally, some unrelated cell colors also change
    green and some of the
    > data
    > gets duplicated in the cells. The underlying data
    provider's data is not
    > confused however. Seems the rendering is screwed up when
    the Datagrid
    > scrolls.
    >
    > Did you find a solution to this problem? I think
    Datagrid is a piece of
    > screwed up code.
    http://www.magnoliamultimedia.com/flex_examples/Amys_Flex_FAQ.pdf
    Q2

  • Datagrid Drop Down Item renderer Scroll Problem

    Hi,
    I am having a problem with an drop down item renderer on a Datagrid.  When ever the datagrid is displayed and the cell is clicked on i want this to display a drop down list of objects.  I can get the drop down to appear with the list of objects.  H
     owever the scrollbar does not work on this item to allow the user to scroll through all the objects.  If you use the mouse wheel you can scroll down through them all but not when you try and click on the scroll bar to drag down.  Below is the code used.  Any advice why this might be happening?? 
    <mx:DataGridColumn headerText="Widget"
    dataField="WidgetName"
    editable="true"  headerWordWrap="false" textAlign="center" width="100"
    editorDataField="Widget">
    <mx:itemEditor>
    <fx:Component>
    <s:MXDataGridItemRenderer focusEnabled="true" height="22" >
    <fx:Script>
    <![CDATA[               
    import mx.events.FlexEvent;
    import spark.events.IndexChangeEvent;
    private var selectedWidget:Widget = null;
    public function get ccyPair():String {
    return  ddlCcyPairs.selectedItem.Widget;
    override protected function commitProperties():void {
    super.commitProperties();                
    trace("Commit .......");
    protected function ddlCcyPairs_changeHandler(event:IndexChangeEvent):void {
    for each(var ccyP:CurrencyPair in ddlCcyPairs.dataProvider) {
    if (ccyP.ccyPair == ddlCcyPairs.selectedItem.ccyPair) {
    selectedWidget = ccyP;
    ddlCcyPairs.selectedItem = selectedWidget;
    protected function ddlCcyPairs_creationCompleteHandler(event:FlexEvent):void {                 
    for each(var ccyP:CurrencyPair in ddlCcyPairs.dataProvider) {
    if (ccyP.ccyPair ==  data.ccyPairName) {
    selectedWidget = ccyP;
    ddlCcyPairs.selectedItem = selectedWidget;
    ]]>
    </fx:Script>
    <s:DropDownList id="ddlWidgets" width="100%"
    dataProvider="{parentApplication.Widgets}"
    labelField="name"              
    selectedItem="selectedWidget"
    creationComplete="ddlWidgets_creationCompleteHandler(event)"
    change="ddlWidgets_changeHandler(event)"/>
    </s:MXDataGridItemRenderer>
    </fx:Component>
    </mx:itemEditor>
    </mx:DataGridColumn>

    Hi, Post a test code.... It will be a lot easier to help you Mich

  • Datgrid and Item Renderer scrollling problem

    Hello,
    I have a Datgrid containign item rendrer as follows :
    <mx:DataGrid  width="800" id="gridSecondaire" styleName="dataGridStyle" verticalScrollPolicy="off" headerHeight="30" >
              <mx:columns>
                   <mx:DataGridColumn rendererIsEditor="true" 
                                              editorDataField="result"
                                              itemRenderer="com.cdf.intra_cmmi.view.advancedTree.BodyDetailDocumentRenderer" />
              </mx:columns>
         </mx:DataGrid>
    The problem is I when i scroll the datagrid the  rows do not stay in the same position how to solve this please ?

    Here the item Renderer
    ===================ITEM RENDRER==========================
    <?xml version="1.0" encoding="utf-8"?>
    <mx:Canvas xmlns:mx="http://www.adobe.com/2006/mxml" height="28" width="388" creationComplete="init(event)"  click="clickTexte(event);">
        <mx:Script>
        <![CDATA[
            [Embed(source="images/icon/tree_defaultLeafIcon.png")]
            public static const tree_defaultLeafIcon:Class;
            [Embed(source="images/icon/tree_pptLeafIcon.png")]
            public static const tree_pptLeafIcon:Class;
            [Embed(source="images/icon/tree_xlsLeafIcon.png")]
            public static const tree_xlsLeafIcon:Class;
            [Embed(source="images/icon/anglais.png")]
            private var anglaisIcon:Class;
            import com.sqli.intra_cmmi.constants.ConstantAssets;
            private function clickTexte(event:MouseEvent):void {
                    var fileReference:FileReference = new FileReference();
                    fileReference.download(new URLRequest(data.chemin_document));
            private function init(event:Event):void {
                import com.sqli.intra_cmmi.vo.DocumentVO;
                import mx.controls.Alert;
                import mx.collections.ArrayCollection;
                    var nom_document:String =data.nom_document as String;
                    var description_document:String = data.description_document as String;
                    var language_document:String =data.language_document as String;
                    var ext:String = data.ext as String;
                    var type:String = data.type_document as String;
                    var chemin_document:String = data.chemin_document as String;
                    switch (type)
                            case "Modèle":
                                imageTypeDoc.source = ConstantAssets.modele;
                                break;
                            case "Guide":
                                imageTypeDoc.source = ConstantAssets.guide;
                                break;
                            case "Document":
                                imageTypeDoc.source = ConstantAssets.document;
                                break;
                            case "Outils":
                                imageTypeDoc.source = ConstantAssets.outils;
                                break;
                            case "Check-liste":
                                imageTypeDoc.source = ConstantAssets.checklist;
                                break;
                            default:
                                imageTypeDoc.source = ConstantAssets.document;
                    nom.text=nom_document+' ('+ext+')';
                    if(language_document!='1036'){
                        imageAnglais.source=anglaisIcon;
                    if(description_document!=""){
                        imageDescription.source=anglaisIcon;
        ]]>
    </mx:Script>
        <mx:Image id="imageTypeDoc" x="5" y="5" height="15" width="15"   />
        <mx:Text x="23" y="3" width="326" id="nom"/>
        <mx:Image x="351" y="5" height="15" width="15" id="imageAnglais"/>
        <mx:Image x="370" y="5" height="15" width="15" id="imageDescription"/>
    </mx:Canvas>
    ======================Main.MXLM  (Blue Code part) ===============================
    <?xml version="1.0" encoding="utf-8"?>
    <mx:Canvas xmlns:mx="http://www.adobe.com/2006/mxml"
        width="830"  creationComplete="init()">
        <mx:Script>
            <![CDATA[
                import com.sqli.intra_cmmi.services.MainService;
                import mx.rpc.events.FaultEvent;
                import mx.rpc.events.ResultEvent;
                import com.sqli.intra_cmmi.controller.ProduitController;
                import com.sqli.intra_cmmi.services.VerticalMenuService;
                //import com.sqli.intra_cmmi.services.MainService;
                import com.sqli.intra_cmmi.vo.ProduitVO;
                import mx.controls.Alert;
                public var objectList : Array = new Array();
                public function init():void
                    myProc.listeDomaineProcessus();
                    if(VerticalMenuService.getInstance().produitVerticalMenu.getChildren().length > 0)
                        // On positionne l'accordion des produits sous l'accordion commun
                        VerticalMenuService.getInstance().produitVerticalMenu.y = VerticalMenuService.getInstance().verticalMenu.height - 49;
                        MainService.getInstance().lefter.addChild(VerticalMenuService.getInstance().produitVertic alMenu);
                    var id:String;
                    id=ProduitController.getInstance().currentProduitId;
                    if(id!=null)
                        myProd.getProduitDescription(id);
                        myProd.getDocumentPrincipauxByProduit(id,1);
                        myProd.getDocumentSecondaireByProduit(id,0);
                        myProd.getRolesProduit(id);
                        myProd.getAjustementProduitByID(id);
                private function getDataListener_listeDomaineProcessus(event:ResultEvent):void
                    //refPhase= new ArrayCollection();
                    this.objectList = event.result as Array;
                    // Peupler l'accordion
                    ProduitController.getInstance().populateVerticalMenu(this.objectList);
                private function getDataListener_getDocumentSecondaireByProduit(event:ResultEvent):void
                    var obje:Array = event.result as Array;
                    if(obje.length>0)
                        gridSecondaire.dataProvider = event.result as Array;
                        gridSecondaire.rowHeight = 33;                   
                        gridSecondaire.height = obje.length*33+30;
                        var maximumHeight : int = 228;
                        if ( gridSecondaire.height > maximumHeight){
                          gridSecondaire.verticalScrollPolicy = "on";
                          gridSecondaire.height = maximumHeight;                   
                    else
                        gridSecondaire.visible=false;
                        gridSecondaire.includeInLayout=false;
                override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void
                    super.updateDisplayList(unscaledWidth, unscaledHeight);
                    // Peupler l'accordion (rafraichissement lors du passage d'une rubrique à une autre)
                    ProduitController.getInstance().populateVerticalMenu(this.objectList);
                private function getDataListener_getProduitDescription(event:ResultEvent):void{
                        description.title=ProduitVO(event.result).nom_produit;
                        idPanelDescription.htmlText=ProduitVO(event.result).description_produit;
                private function faultListener(event:FaultEvent):void {
                        Alert.show(event.fault.message, "Error");
            ]]>
        </mx:Script>
        <mx:VBox verticalGap="20"  horizontalCenter="0" top="10" bottom="10">       
        <mx:Panel width="800" height="121" id="description"  styleName="stylePanel"  >
            <mx:Label paddingLeft="5"  paddingRight="5" paddingTop="40"  width="100%" id="idPanelDescription"/>
        </mx:Panel>
       <mx:DataGrid  width="800" id="gridSecondaire" styleName="dataGridStyle" verticalScrollPolicy="off" headerHeight="30"  >
            <mx:columns>
                <mx:DataGridColumn rendererIsEditor="true"  editorDataField="result"
                 itemRenderer="com.sqli.intra_cmmi.view.advancedTree.BodyDetailDocumentRenderer"
                  headerText="Documents secondaires"/>
                <mx:DataGridColumn rendererIsEditor="true"  editorDataField="result" dataField="livrable_document" headerText="Livrables" width="100"/>    
            </mx:columns>
        </mx:DataGrid>
        </mx:VBox>
        <mx:RemoteObject id="myProc" destination="zend" source="ProcessusService" showBusyCursor="true" fault="faultListener(event)">
            <mx:method name="listeDomaineProcessus" result="getDataListener_listeDomaineProcessus(event);" />
        </mx:RemoteObject>
        <mx:RemoteObject id="myProd" destination="zend" source="ProduitsService" showBusyCursor="true" fault="faultListener(event)">
            <mx:method name="getRolesProduit" result="getDataListener_getRolesProduit(event);" />
            <mx:method name="getDocumentPrincipauxByProduit" result="getDataListener_getDocumentPrincipauxByProduit(event);" />
            <mx:method name="getDocumentSecondaireByProduit" result="getDataListener_getDocumentSecondaireByProduit(event);" />
            <mx:method name="getAjustementProduitByID" result="getDataListener_getAjustementProduit(event);" />
            <mx:method name="getProduitDescription" result="getDataListener_getProduitDescription(event);" />
        </mx:RemoteObject>
    </mx:Canvas>

  • No Padding when Extending ButtonBar as Item Renderer in AdvancedDataGrid

    I am using an ActionScript Class to extend the ButtonBar
    component as my Item Renderer in an AdvancedDataGrid. However, when
    I set the styles and properties of the ButtonBar in the
    constructor, it shifts the ButtonBar all the way to the left of the
    Column, with no padding to the left. Any thoughts? Here is my
    constructor function:
    public class SavedReportsButtonBar extends ButtonBar
    public function SavedReportsButtonBar()
    super();
    setStyle("horizontalAlign", "left");
    width=450;
    percentHeight=100;
    Any help is greatly appreciated - I'm really trying to grasp
    and use the whole OO programming idea.

    2) You do not set an item editor only an item renderer.
    <mx:AdvancedDataGridRendererProvider columnIndex="0"
    columnSpan="1" depth="1" renderer="mx.controls.CheckBox">
    3) You do not have rendererIsEditor on any columns that I can
    see.
    <mx:AdvancedDataGridColumn dataField="@sel"
    headerText=" " width="25" rendererIsEditor="true"
    editable="true" editorDataField="selected"/>
    If I use the itemrender for that column, i am gettting the
    check box for all the rows. Which i dont want . I want check box
    only for the folder node. so i am using renderer provider
    I want only one column to be editable

  • Strange Problem with datagrid item renderer in flash palyer 10

    Hi All
    In Flash player 10 when i use a text input as a item renderer in grid with a custom textinput skin , it does not show us the text , where as in flash player 11 it shows us. is there any work around for it or it's a bug.
    Plz help  me on this.

    The url works for me.  Please verify that you entered it correctly.  There are other sites that will verify your player version.  Search for them, pick one and report the results.
    Before you file a bug, it is probably best to do some investigation first to make sure it isn’t a known issue or an issue in your code.

  • Problems regarding a cutoms item renderer

    Hello,
    I have created a custom item renderer whcih contains two labels and a button. this list is populated on a sertain event. but this list behaves very weird when the triggering event is triggered second time and so on.
    What happens is the content set to labels labelFuntion are chaned or changes their place if I set them dynamically. And they do not change even if I want to when they are placed statically. I am attaching my code  herewith
    <?xml version="1.0" encoding="utf-8"?>
    <s:ItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009"
                    xmlns:s="library://ns.adobe.com/flex/spark"
                    left="5"  autoDrawBackground="false"  creationComplete="_initializeHandler(event)"
                    fontSize="12" fontWeight="bold" resize="itemrenderer1_resizeHandler()"
                    width="100%"  cachePolicy="on">
        <fx:Script>
            <![CDATA[
                import mx.collections.ArrayCollection;
                import mx.events.FlexEvent;
                import mx.events.ResizeEvent;
                import mx.managers.PopUpManager;
                import skins._alert;
                import skins.creoCustomButtons;
                import skins.logoutConf;
                import spark.components.CheckBox;
                import spark.events.PopUpEvent;
                private var but:Button;
                private var a:_alert;
                public var timer2:Timer;
                import spark.components.Button;
                private var cb:CheckBox;
                private var confirmation:logoutConf;
                private var tempo:String;
                public static var _temp_array:Array = new Array();
                import skins.radioButtonList;
                public var _billingCycle:radioButtonList;
                public var subOptions:ArrayCollection;
                [Bindable]public var initiator:int = 0;
                public static var config_data_Temp:ArrayCollection = new ArrayCollection();
                public static var counter:int = new int();
                public function confirmAction(event:MouseEvent):void{
                    //    config_data_Temp.removeItemAt(data.subOptions[this.data].name);
                    subOptions = new ArrayCollection(data.subOptions);
                    _billingCycle = new radioButtonList;
                    _billingCycle.dataProvider = subOptions;
                    _billingCycle.labelField = "name";
                    _billingCycle.width = stage.width;
                    _billingCycle.height = stage.height ;
                    _billingCycle.addEventListener(PopUpEvent.CLOSE, selectedValue);
                    _billingCycle.open(this,true);
                public function selectedValue(event:PopUpEvent):void{
                    if(event.commit){
                        var selectedItems:Vector.<Object> = event.data as Vector.<Object>
                        for(var i:int = 0; i<GlobalData.configurations_data.length; i++){
                            var tempo:String = GlobalData.configurations_data.getItemAt(i,0).toString();
                            //if(config_data_Temp[i]==this.name)
                            if(tempo==btn.label.toString())
                                GlobalData.configurations_data.removeItemAt(i);
                                GlobalData.configurations_data.addItemAt(selectedItems[0].name, i);
                                _price.text = GlobalData.configurations_data[i].price;   
                        type.text = selectedItems[0].name;
                        btn.label = selectedItems[0].name;
                        //GlobalData.configurations_data = null;
                        //GlobalData.configurations_data = config_data_Temp;
                private function processRequest(event:PopUpEvent):void{
                    if(event.commit)
                        _temp_array.push(data.domain_name+data.tldname);
                        GlobalData.domain_name_data = _temp_array;
                        a = new _alert();
                        a.title = "Request Status";
                        a.message = "Your request is successfully processed.\n Check you email account for details";
                        a.open(this.parent, true);
                        PopUpManager.centerPopUp(a);
                        timer2 = new Timer(2000, 1);
                        timer2.addEventListener(TimerEvent.TIMER_COMPLETE,timerComplete2);
                        timer2.start();
                Timer coplete event closing the current displayed popup
                text="{data.subOptions[0].optFees}"
                label="{data.subOptions[0].name}"
                public function  timerComplete2(event:TimerEvent):void
                    a.close()
                public function itemrenderer1_resizeHandler():void{
                    if(but){
                        but.x = (this.parent.width-but.width)-10;
                    if(confirmation)
                        PopUpManager.centerPopUp(confirmation);
                    if(a)
                        PopUpManager.centerPopUp(a);
                public var myButon:Button;
                protected function _initializeHandler(event:FlexEvent):void
                    btn.label = data.subOption[0].name;
            ]]>
        </fx:Script>
        <s:HGroup height="30" width="100%" verticalAlign="middle" gap="0">
            <s:Label width="30%" text="{data.name}"
                     fontSize="10" fontWeight="normal" id="type"/>
            <s:Label  id ="_price" width="10%"
                     fontSize="10" fontWeight="normal"/>
            <s:Button  fontSize="12" fontWeight="normal"
                      skinClass="skins.creoCustomButtons" chromeColor="#ffffff"
                      click="confirmAction(event)" width="60%"  id="btn"/>
        </s:HGroup>
    </s:ItemRenderer>
    NOTE: [ Please ignore comments and import statements ]
    The button pops up a radio button list. After an item is clicked the selected text should be placed on button permenantly, which is not happening in current scenario.
    Any kind of help is appreciated! 

    Hi Karthik
             to where u are dragging this record from grid...? the second component also ready to accept the same type of records when u drag form grid to second component.. that is the scenario..

Maybe you are looking for

  • Can't search contents of files only file names.

    I am really stuck guys. It's been aggrevating me for days. I tried to download 3rd party programs for searching in files and it still doesn't work. I checked the forums here and people only have trouble searching for kinds of files. Even when I use s

  • ISync and Motorola Razr2 V9 problem

    Hi all, I know there was a similar thread, but it's been archived so I can't post there. I just got a Motorola Razr2 V9x and tried to sync it with my Mac. I know I need a plugin for this. I have the plugin and iSync recognizes the phone. Whenever I t

  • [SOLVED] Libre Office Writer 4.2.3 freezes trying to open docx file

    After the upgrade of the Libre Office suite from 4.2.2 to 4.2.3, I cannot open docx files - the UI freezes with no response to keyboard or mouse. Downgrading all libreoffice-* packages to 4.2.2-5 allows Writer to open the files once again correctly.

  • Media files not showing in Palm desktop

    I have done a successful sync between iMac and TX, and have Palm Desktop 4.2.1.  Everything shows up in desktop except the media files (which were there with Palm Desktop using Windows XP on my old computer).  I was able to transfer a photo from the

  • Lobsegments in system tablespace

    i have noticed that in my database suddenly lobsegments have increased. can someone guide me, how to start the investigation where they are coming from. thanks saps