Código :
/*Debes tener el clip compilado del Datagrid y Button en la biblioteca
solo arrastra el componente al escenario y luego lo quitas*/
import mx.controls.DataGrid;
import mx.controls.Button;
var proveedor:Array = new Array();
var grid:DataGrid = createClassObject(DataGrid,"grid",this.getNextHighestDepth(),{_x:0,_y:0,_width:500});
var boton:DataGrid = createClassObject(Button,"boton",this.getNextHighestDepth(),{_x:600,_y:0,_width:100,label:"Consultar"});
var listener:Object = new Object();
proveedor.push({url:"http://www.cristalab.com",Name:"Cristalab"});
proveedor.push({url:"http://www.google.com",Name:"Google"});
proveedor.push({url:"http://www.adobe.com",Name:"Macromedia"});
grid.dataProvider= proveedor;
listener.change = function (obj:Object){
trace("Columna Name: "+obj.target.selectedItem.Name);
trace("Columna URL: " +obj.target.selectedItem.url);
trace("Indice en el grid:" +obj.target.selectedIndex);
}
listener.click = function (obj:Object){
trace("Columna Name: "+grid.selectedItem.Name);
trace("Columna URL: " +grid.selectedItem.url);
trace("Indice en el grid:" +grid.selectedIndex);
}
grid.selectedIndex=0; //seleccionamos el primero por defecto
grid.addEventListener("change",listener);
boton.addEventListener("click",listener);
saludos