Use a repeater to push the data out, then use some custom scripting--preferably backed by JQuery or some other sane scripting library to convert the row from data to form fields. Then grab the fields and post them back as XML or JSON depending on your pain tolerance.
Clicking on the Edit link (adjacent) to each row, the row should become editable. Basically, Label should change to DropDown. So, I have to play with visibility and invisibility of each control on each row of the grid.