I just tried to make same thing yesterday. Collecting values is not a problem, and there is no problem with adding that row to dataProvider. Though I ran in huge problems while trying to keep that line on bottom of dataGrid when user is rearanging data in table. Code looked something like this: private function onSorting(event:DataGridEvent):void { setTimeout(function ():void { for(var i:uint = 0; i<displayTable.dataProvider.length; i++){ if(displayTable.dataProvider[i].num == "") { var totals:Object = displayTable.dataProvider.removeItemAt(i); displayTable.dataProvider.addItem(totals); displayTable.invalidateList(); return; } } }, 10); } setTimeout is needed because DataGridEvent.HEADER_RELEASE is broadcasted before actual rearranging of data. This code actually never worked as I wanted to. I cought some strange tihngs during testing like displayTable.dataProvider.addItemAt(totals, 3); trace(displayTable.dataProvider.getItemIndex(totals)); wont trace 3, but last value, so theres maybe a bug in ArrayCollection class, or thats only me who is doing something wrong.
Anyways, if someone has ideas how to keep one row constantly at bottom, I preciate that. Janis