Turns out View State was saving the user input and I could access it if I rebuilt the table on the postback, just like Pete said.
The only thing was that it was saving the original data and the new data sperated by a comma.
However if when I try to reference these columns, there are no controls in them, so that didn't work. explanation: yes, that's because alongwith creating templatefields you also bind the data, which is the original data.
so, in the first place and as you realize quite well, you need to separate the databinding versus templatefield creation (the latter can be dependent on the dataset as long as you don't bind). Is Post Back in Page Load, just like you were already doing but for something else: page_load OK I got it. Text; echo field "User Entered Value" Thanks for all the help!
In Row Updating, I see the old data and not the new data that was entered by the user. What I need to do is update the Data Set in Row Updating with data that the user entered.
If I rebuild the Grid View before Row Updating fires then this data is lost..
The way my code is set up makes that a large time investment however.
In this method we write sql query in our code behind page instead of writing sql stored procedure.