I guess this is too late... But first, you are trying to get data keys right after data retrieval and not after data bind. DataKeys do not get populated until DataBind.
Second, data keys do not store new post-update values. They are copies of what was available during binding, stored in the view state, and used primarily to locate records after a post back w/o doing another bind.