Hola, estoy haciendo una interfaz en AIR 2.0 (utilizando AS3) en la que necesito insertar Checkboxs en las columnas de un Datagrid. Por lo que utilice CellRenderer para poder insertar cada checkbox en la celda correspondiente. Hasta aquí todo funciona perfecto, el problema sucede que al mover el scroll bar vertical del datagrid, los checkbox se destildan y otros se tildan sin haber clickeado en ellos, pero solo a nivel gráfico.

Este es codigo en el fla para llenar el datagrid:

Código ActionScript :

import fl.data.DataProvider;
import fl.controls.dataGridClasses.DataGridColumn;
import fl.controls.*;
import fl.events.*;

grilla.setSize(170, 200);

var seleccion:DataGridColumn = new DataGridColumn("Seleccionado");
grilla.addColumn(seleccion);
seleccion.cellRenderer =cargadorCellRenderer;//asigno el cellrenderer para el checkbox


var nombre:DataGridColumn = new DataGridColumn("Nombre");
grilla.addColumn(nombre);


var datos:Array = [{Nombre: "Freddy", Seleccionado: true},
{Nombre: "Carolina", Seleccionado: true},
{Nombre: "Jaime", Seleccionado: false},
{Nombre: "Marta", Seleccionado: true},
{Nombre: "Alejandra", Seleccionado: false},
{Nombre: "Claire", Seleccionado: true},
{Nombre: "Soledad", Seleccionado: false},
{Nombre: "Daniel", Seleccionado: true},
{Nombre: "Juan", Seleccionado: true},
{Nombre: "Javier", Seleccionado: false},
{Nombre: "Rosa", Seleccionado: true},
{Nombre: "Maria", Seleccionado: false},
{Nombre: "Gabriel", Seleccionado: true}
];

grilla.dataProvider = new DataProvider(datos);



Este es codigo de la clase cargadorCellRenderer para el checkbox:

Código ActionScript :

package 
{

   import fl.controls.CheckBox;
   import flash.events.MouseEvent;
   import fl.controls.listClasses.ListData;
   import fl.controls.listClasses.ICellRenderer;
   import fl.controls.DataGrid;

   public class cargadorCellRenderer extends CheckBox implements ICellRenderer
   {
      protected var _data:Object;
      protected var _listData:ListData;
      public static var _stage;

      public function cargadorCellRendere()
      {
         super();
         label = "";
         addEventListener(MouseEvent.CLICK, onClick);
         
      }

      public function onClick(MouseEvent):void
      {
         _selected = ! _selected;
         _data.Seleccionado = _selected;
      }
   
      public function get data():Object
      {
         return _data;
      }


      public function set data(value:Object):void
      {
         _data = value;
         _selected = _data.Seleccionado;
      }

      public function get listData():ListData
      {
         return _listData;
      }

      public function set listData(value:ListData):void
      {
         _listData = value;
      }

      override public function get selected():Boolean
      {
         return _selected;
      }

      override public function set selected(value:Boolean):void
      {
      }

   }
}



Espero alguíen me pueda ayudar, la idea es que al mover el scroll vertical del datagrid, los checkboxs mantengan su estado y no se alteren aleatoriamente. Gracias