Resulta que estoy haciendo una aplicacion que genera gridRows dinamicamente desde una base de datos, esos gridRow estan siendo llenados por los datos de la base de datos, la base de datos me regresa un estatus donde si el estatus es 1 hay una imagen X y si el status es 2 hay una imagen Y, ademas le estoy agregando un addEventListener donde estoy llamando un metodo miFuncion y le quiero pasar el id de la imagen el cual debe ser unico pero siempre me pasa el ultimo valor leido de la consulta, no respeta el valor unico... el codigo mas o menos es el siguiente:

for(i = 0; i < Query.RECORDCOUNT; i++){
gridItemA = new GridItem();
gridRowA = new GridRow();
imageA = new Image();
if(Query.DATA.ESTATUS[i] == 1){
imageA.source="abierto.gif"
imageA.id= Query.DATA.ID[i];
imageA.addEventListener(MouseEvent.CLICK,function():void{miFuncion(imageA.id)});
}else{
imageA.source="cerrado.gif"
}
gridItemA.addChild(imageA);
gridItemA.percentWidth=100;
gridItemA.percentHeight=100;
gridRowA.addChild(gridItemA);
gridRowA.percentWidth=100;
gridRowA.percentHeight=100;
gridItem.addChild(gridRowA);
}
}

aa espero y me ayuden jijij ando algo desesperado