[Okta Webinar] Learn how to a build a cloud-first strategyRegister Now

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 436
  • Last Modified:

How can I get and set contents of a particular cell in Flex DataGrid? e.g. myDG.Cells(col,row) should return me contents of Cell at [col] Column

How can I get and set contents of a particular cell in Flex DataGrid? e.g. myDG.Cells(col,row) should return me contents of Cell at [col] Column.
I have some function
private function updateCells():void {
....
.....
}
In my Flex DataGrid I have 7 columns out of which 4 has been binded with dataFields but rest of the 3 need some calculation done on the basis of those 4 columns.
I call updateCells function on creationComplete event of the myDG (My DataGrid).

Any help would be appreciated. Thanks a ton in advance.
0
Aloha_Technology
Asked:
Aloha_Technology
1 Solution
 
Fuzzy_Logic_Commented:
You need to look at this differently, the DataGrid just displays data from a list/array. Setting one cells value is done by setting the value in the object
the DataGrid is bound to.

Below is how I would handle a simple Cost Quantity TotalPrice grid. Hopefully it might provide you with some help.

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="init()">
   
   <mx:Script>
       <![CDATA[
           import ee.Order;    // importing your custom class
           import mx.collections.ArrayCollection;
           
           // build example class Order collection
           [Bindable] // make sure its bindable
           public var egAC:ArrayCollection = new ArrayCollection;
           
           public function init():void // this is just to make up some data
           {
 
               var x:int;
               for ( x = 0; x < 4; x++ )
               {
                   var newOrder:Order = new Order(); // initialize new Object of type Order
                   
                   newOrder.Quantity = 0;
                   newOrder.Cost = ( x + 2 ) * 2 / 2;   // making up costs
 
                   egAC.addItem( newOrder ); // add order to array collection
               }
               
           }
           
       ]]>
   </mx:Script>
   
   <mx:DataGrid dataProvider="{egAC}" editable="true">
        <mx:columns>
            <mx:DataGridColumn dataField="Cost"  editable="false"/>
            
            <mx:DataGridColumn dataField="Quantity"/> 
            <mx:DataGridColumn dataField="TotalPrice"  editable="false"/>
        </mx:columns>
       
   </mx:DataGrid> 
</mx:Application>
 
// this class is in src/ee folder
 
package ee
{
    public class Order
    {
 
        public var Cost:Number;
        public var Quantity:Number;
 
        public function get TotalPrice():Number        // getter function
        {
            return Cost * Quantity; 
        }
 
    }
}

Open in new window

0
 
dgofmanCommented:
This question has been classified as abandoned and is closed as part of the Cleanup Program. See the recommendation for more details.
0

Featured Post

Creating Active Directory Users from a Text File

If your organization has a need to mass-create AD user accounts, watch this video to see how its done without the need for scripting or other unnecessary complexities.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now