J'interroge un objet RemoteObject toutes les 5 secondes à l'aide de setInterval et le résultat renvoyé (Array) est transmis à un DataGrid en tant que DataProvider. Toutefois, à chaque fois que cela se produit, la ligne sélectionnée désélectionne lorsque le DataGrid est actualisé. Je veux donc re-sélectionner l'élément lorsque le DataGrid a été mis à jour.Flex 4: Impossible de présélectionner l'élément dans DataGrid (Array)
Jusqu'à présent, j'ai essayé de capturer la ligne sélectionnée avant la RemoteObject est appelée à l'aide:
private function refreshDataGrid(e:ResultEvent):void
{
var selectedRow:Object = myDataGrid.selectedItem;
myDataGrid.dataProvider = e.result as Array;
myDataGrid.selectedItem = selectedRow;
}
Toutefois, cela ne fonctionne pas. Si je sélectionne la ligne, puis que je fais un "trace (myDataGrid.selectedItem)", le résultat dans la console est vide.
Dans une autre tentative, j'ai essayé:
private function refreshDataGrid(e:ResultEvent):void
{
var selectedItem:* = myDataGrid.selectedItem.itemId;
myDataGrid.dataProvider = e.result as Array;
myDataGrid.selectedItem.itemId = selectedItem;
}
Cela ne fonctionne pas non plus.
Quelqu'un peut-il m'aider à faire ce travail? Toute aide serait grandement appréciée. Merci d'avance.
Ce fut le plus facile à mettre en œuvre et fonctionne très bien. Merci. – Reado