Thanks Pasty... I've not tried your answer but will have a look... I actually found my answer... My testing happened to be on an even row which is an Alternate Row. So my line
If e.Row.RowState = DataControlRowState.Edit Then...
Was not being triggered... changing the code to
If e.Row.RowState = DataControlRowState.Edit OR e.Row.RowState = DataControlRowState.Alternate + DataControlRowState.Edit Then...
works fine...