Solved

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

Posted on 2009-05-13
3
418 Views
Last Modified: 2012-08-13
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
Comment
Question by:Aloha_Technology
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
3 Comments
 
LVL 5

Accepted Solution

by:
Fuzzy_Logic_ earned 50 total points
ID: 24381545
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
 
LVL 29

Expert Comment

by:dgofman
ID: 37499045
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

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
FLex Calendar 3 570
AS3 auto playing child movie clips? 2 641
Flex Mobile - update/refresh current view 7 1,303
Actionscript 3 343
First things first - Preparation We need all the part for this install and it's much nicer to have them all on hand when you need them so here's what's required. Download Eclipse 3.5 32 bit (I like the Classic flavour) from here. (http://www.e…
When using a search centre, I'm going to show you how to configure Sharepoint's search to only return results from the current site collection. Very useful when using Office 365 with multiple site collections.
With Secure Portal Encryption, the recipient is sent a link to their email address directing them to the email laundry delivery page. From there, the recipient will be required to enter a user name and password to enter the page. Once the recipient …

739 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question