Link to home
Start Free TrialLog in
Avatar of VKN9876
VKN9876

asked on

AdvancedDatagrid ColumnMove Question

I have an advanceddatagrid and trying to prevent the shift of FIRST column but it's not working.
Could any of you help? Code attached.

<?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;
       import flash.net.FileReference;

       import mx.controls.Alert;
    import mx.controls.advancedDataGridClasses.AdvancedDataGridColumn;
             
            import mx.events.IndexChangedEvent;

             
            [Bindable]
private var dp:ArrayCollection=new ArrayCollection([

{A:'G',B:'Mamta',C:'Song 4',D: 100},
{A:'H',B:'Mamta',C:'Song 4',D: 100},
{A:'I',B:'Mamta',C:'Song 4',D: 100},
{A:'J',B:'Mamta',C:'Song 4',D: 100},
{A:'K',B:'Mamta',C:'Song 4',D: 100},
{A:'D',B:'Mamta',C:'Song 4',D: 100},
{A:'D',B:'Mamta',C:'Song 4',D: 100},
{A:'D',B:'Mamta',C:'Song 4',D: 100},
{A:'D',B:'Mamta',C:'Song 4',D: 100},
{A:'D',B:'Mamta',C:'Song 4',D: 100},
{A:'D',B:'Mamta',C:'Song 4',D: 100},
{A:'D',B:'Mamta',C:'Song 4',D: 100},
{A:'D',B:'Mamta',C:'Song 4',D: 100},
{A:'D',B:'Mamta',C:'Song 4',D: 100},
{A:'D',B:'Mamta',C:'Song 4',D: 100},
{A:'D',B:'Mamta',C:'Song 4',D: 100},
{A:'D',B:'Mamta',C:'Song 4',D: 100},
{A:'D',B:'Mamta',C:'Song 4',D: 100},
{A:'D',B:'Mamta',C:'Song 4',D: 100},
{A:'D',B:'Mamta',C:'Song 4',D: 100},
{A:'D',B:'Mamta',C:'Song 4',D: 100}
]);
            
      
    private function columnMoveHandler(event:IndexChangedEvent):void{
          var array:Array = dg.columns;
        var oldIndex:uint = event.oldIndex;
        var newIndex:uint = event.newIndex;
        var col:AdvancedDataGridColumn;
        col = array[0];
       
        //event.preventDefault();
        if (//oldIndex !=newIndex ||
        col.dataField !="A"){
       
        //event.stopImmediatePropagation();
        //event.preventDefault();
        //event.cancelable;
        dg.columns = array;
        dg.validateNow();
        }
       
      }


      ]]>
</mx:Script>

<mx:VBox width="100%" height="50%">
      

<mx:AdvancedDataGrid  dataProvider="{dp}" id="dg" headerShift="columnMoveHandler(event)">
<mx:columns>
      
      <mx:AdvancedDataGridColumn headerText="A"  dataField="A"/>
      
      <mx:AdvancedDataGridColumn headerText="B" dataField="B"/>
      <mx:AdvancedDataGridColumn headerText="C" dataField="C"/>
      <mx:AdvancedDataGridColumn headerText="D" dataField="D"/>
</mx:columns>
</mx:AdvancedDataGrid>
</mx:VBox>
</mx:Application>
ASKER CERTIFIED SOLUTION
Avatar of Fuzzy_Logic_
Fuzzy_Logic_
Flag of United Kingdom of Great Britain and Northern Ireland image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of VKN9876
VKN9876

ASKER

You are the BEST. Thanks a lot.