Como chamar a função setSelectedItem somente depois que o datagrid for completamente populado.
Estou tendo problema de sincronismo no flex.
svrAcessoBanco.getLista(); // Chamando o remote Object
setSelectedItem("12345");
private function setSelectedItem(lastDesign:String):void
{
var gData:Object = dgDadosMP.dataProvider;
for(var i:Number=0; i < gData.length; i++)
{
var thisObj:Object = gData.getItemAt(i);
if(thisObj.pes_design == lastDesign)
{
dgDadosMP.selectedIndex = i;
dgDadosMP.validateNow();
dgDadosMP.scrollToIndex(i);
}
}
}
ou caso alguém tenha uma solução melhor para selecionar automaticamente o ultimo registro adicionado no datagrid.
a forma de chamar o método depois que o datagrid for populado é retornando o AsyncToken para qem chama o método remoto (no caso se svrAcessoBanco for um RemoteObject isto já esta acontecendo), e adicionar um Responder no AsyncToken, a interface IResponder tem dois métodos, result e fault um dos dois vai ser chamado no final da chamada remota, mas o que tu quer é o result.
O código vai ficar mais ou menos assim:
svrAcessoBanco.getLista().addResponder(new mx.rpc.Responder(
function(data:ResultEvent):void{
setSelectedItem("12345");
},
function(info:Object):void{
}
));
Está chamando o método depois, mais na verdade não funcionou da forma que gostaria.
Na verdade o que preciso é selecionar automaticamente no datagrid o ultimo registro adicionado.