Current value before posting

The code I'm writing is all for the 'KeyPress' event of the grid.

I've tried using cached updates (although I didn't really want to) with
'NewValue', it reported the first key I pressed but when I pressed the next
one 'NewValue' came back as NULL.

I've tried messing around with posting after each character, but that
doesn't work because you can only ever enter one character which gets
overwritten by the next.

I've looked at the InPlaceEditor, but can't see a way to access it from a
DBGrid.

Any help or suggestions much appreciated.