I see, this is a continuation of your
previous question[
^]. Now, if you see, you have put one template field and added table rows in it with all your columns. Hence when you try to find values in Column 7,8 or so, you get index out of range.
Each template field here corresponds to one column. Now, do you math and put logic to see how many columns you have and if you are poiniting to correct column for extracting data.
Try: separate all rows - name, message, etc in different template fields.
Use Visual Studio DEBUGGER to check the column counts and appropriately call/use them.
If needed, read about template fields here:
MSDN: Using TemplateFields in the GridView Control[
^]
P.S.: Now, in response to this question/answer, don't create a new question. That confuses new user when they see your followup question.