Data Grid Component Help

Hello Flash Community,

I need some help with loading the users selection into my Data Grid. I currently have 2 numeric stepper components on the stage where the user selects their quantity. When the user selects the checkout button a data grid is displayed however I get an underfined error for the contect. Please help I have searched various forms and tutorials but none that shows how to load the user data dynamically. I have attached my .as file my .fla file exceeds the limit for upload. Thanks in advance!


import mx.controls.*;
import fl.controls.dataGridClasses.*;
import fl.controls.dataGridClasses.DataGridColumn;
import fl.data.DataProvider;
class Cart2 {
 var CartCalc:String;
 var quantity:NumericStepper;
 var Product:Number;
 var Product2:Number;
 var mynum:String;
 var CartTotal:Number = 0;
 var CartTotal2:Number = 0;
 var CalcMe:Number;
 var Total:Number = 0;
 var MyArray:Array;
 var GiftCardsText:String;
 var PostersText:String;
 var m_parent_mc:MovieClip;
 var cart_dg:DataGrid;
 //var quantity:Number;
 var quantity2:NumericStepper;
 var myArr:Array;
 var myArr2:Array;
 var cart:DataGrid;
 var CalculateValue:Number;
 
 public function GetUserSelection() {
  quantity = _level0.TESTMC.myvalue.value;
  //trace("Quantity in AS"+ _level0.TESTMC.myvalue.value);
  Product = 5.00;
  CalculateValue = (Product*quantity*100)/100;
   myArr = ["Gift Cards", "5.00", quantity, CalculateValue];
  //trace(myArr);
  drawCartTotal(CalculateValue);
 }
 
 public function GetU() {
  quantity2 = _level0.TESTMC.myvalue2.value;
  //trace("Get U" + quantity2);
  //trace("Quantity AS"+ _level0.TESTMC.myvalue2.value);
  Product2 = 10.00;
  CalcMe = (Product2*quantity2*100)/100;
  myArr2= ["Post Cards", "10.00", quantity2, CalcMe];
  myArr2.push(cart);
  //trace(myArr2);
  drawCartTotal(CalcMe);
 }
 
 function drawCartTotal(MyTotal:Number) {
  Total += MyTotal;
  _level0.CartTotal = String(Total);
  _level0.CartTotal.indexOf(".") == -1 ? _level0.CartTotal += ".00" : _level0.CartTotal += "0";
 }
 
 
 public function CheckOut() {
  var thisCart:Cart2 = this;
  // dynamically add a DataGrid to the Stage and give it an instance name of "cart_dg".
  cart = _level0.createClassObject(mx.controls.DataGrid, "cart_dg", 0);
  cart.columnNames = ["quantity", "name", "price"];
  cart.setSize(400, 120);
  var quantity_dgc = cart.getColumnAt(0);
  quantity_dgc.width = 60;
  quantity_dgc.headerText = "Quantity";
  //trace(quantity);
  cart.addItem({Quantity:quantity});
  var myDP = new Array();
  myDP.addItem({ProductName:Product, Quantity:quantity, Price:CalculateValue});
/* Assign the data provider to the DataGrid to populate it. Note: This has to be done before applying the cellRenderers. */
  cart.dataProvider = myDP;
  
  var name_dgc = cart.getColumnAt(1);
  name_dgc.width = 180;
  name_dgc.headerText = "Product Name";
  cart.addItem({ProductName:Product});
  name_dgc.labelFunction = function(item:Object) {
   if (item != undefined) {
    return item.name;
   }
  };
  var price_dgc = cart.getColumnAt(2);
  price_dgc.width = 70;
  price_dgc.headerText = "Price";
  price_dgc.labelFunction = function(item:Object) {
   if (item != undefined) {
    return "$"+item.price;
   }
  };
  
  cart.move(5, 270);
  //trace("CheckOut" + quantity2);
 
  }
}