flex4 - Flex 4: Can't pre-select item in DataGrid (Array) -


i'm polling remoteobject every 5 seconds using setinterval , returned result (array) being fed datagrid dataprovider. everytime happens selected row deselects when datagrid refreshed. want re-select item when datagrid has been updated.

so far i've tried capturing selected row before remoteobject called using:

private function refreshdatagrid(e:resultevent):void {     var selectedrow:object = mydatagrid.selecteditem;     mydatagrid.dataprovider = e.result array;     mydatagrid.selecteditem = selectedrow; } 

however doesn't work. if select row , "trace(mydatagrid.selecteditem)", result in console blank.

in attempt tried:

private function refreshdatagrid(e:resultevent):void {     var selecteditem:* = mydatagrid.selecteditem.itemid;     mydatagrid.dataprovider = e.result array;     mydatagrid.selecteditem.itemid = selecteditem; } 

this doesn't work either.

can me make work? appreciated. in advance.

it looks have unique itemid property on objects. problem second attempt is attempting set itemid on selected item rather changing selected item item has itemid. change second version loop through dataprovider , locate item specified itemid, set item selected item. this:

private function refreshdatagrid(e:resultevent):void {     var selecteditem:* = mydatagrid.selecteditem.itemid;     mydatagrid.dataprovider = e.result array;      (var i:int = 0; < mydatagrid.dataprovider.length; i++) {         if (mydatagrid.dataprovider[i].itemid == selecteditem) {             mydatagrid.selecteditem = mydatagrid.dataprovider[i];             break;         }     } } 

Comments

Popular posts from this blog

unicode - Are email addresses allowed to contain non-alphanumeric characters? -

C#: Application without a window or taskbar item (background app) that can still use Console.WriteLine() -

c++ - Convert big endian to little endian when reading from a binary file -