bom, mandei uma resposta mas não foi postada, então, resumidamente é isso: var selectedItem:Object = _dataGridPrincipal.selectedItem;; var verticalScrollPosition:int = _dataGridPrincipal.verticalScrollPosition; /* * 2. Update the data provider of the datagrid. */ _dataGridPrincipal.dataProvider.refresh(); /* * 3. Set again the datagrid verticalScrollPosition and selectedItem properties using the values you stored in step 1. */ _dataGridPrincipal.verticalScrollPosition = verticalScrollPosition; _dataGridPrincipal.selectedItem = selectedItem; /* * 4. That's all and enjoy. */
(será que minha mensagem não foi postada pq coloquei a fonte da solução? ah.. acho que não.) On 15 fev, 12:17, Tonussi Eric <erictonu...@gmail.com> wrote: > A principio você vai realmente vai ter que encontrar uma solução para o > refresh. Eu particulamente não gosto de editar diretamente no datagrid. > > -- > @Tonussi > tonussi.com <http://tonussi.com/> > > Em 15 de fevereiro de 2012 11:09, Leonardo Oliveira < > leonardoc.olive...@gmail.com> escreveu: > > > > > > > > > Pessoal, por favor me ajudem nisso aí. É um pouco difícil de explicar, > > mas vou tentar em poucas palavras. > > Tenho um datagrid no qual edito alguns campos dele e uso o > > labelFuncion pra formatar e o DataGridEvent.ITEM_EDIT_END pra calcular > > valores e mostrar em outros campos no grid. Acontece que no > > item_edit_end, ao calcular tenho que fazer um datagrid.refresh pra > > aplicar as alterações. O que tá ocorrendo é que quando dou o refresh, > > se tenho um scroll no grid, ao editar uma célula e pressionar enter, > > ao invés de calcular os valores, aplicar o labelfuncion e passar pro > > proximo campo, ele faz isso mas faz também um scroll. Ou seja, o > > ponteiro fica no mesmo lugar na tela mas a barra de rolagem foi > > deslizada. Mais que isso, se é na primeira linha, pula uma linha ao > > pressionar enter escondento pra cima o ítem que pulou. Alguém já > > passou por problema parecido? Existe uma alternativa ao refresh do > > dataprovider? Ajudem aí por favor. > > > -- > > Você recebeu esta mensagem porque está inscrito na lista "flexdev" > > Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com > > Para sair da lista, envie um email em branco para > > flexdev-unsubscr...@googlegroups.com > > Mais opções estão disponíveis emhttp://groups.google.com/group/flexdev -- Você recebeu esta mensagem porque está inscrito na lista "flexdev" Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com Para sair da lista, envie um email em branco para flexdev-unsubscr...@googlegroups.com Mais opções estão disponíveis em http://groups.google.com/group/flexdev