You get the new text from the active cellrenderer.
private void grid_CurrentCellValidating(object sender, CancelEventArgs e)
{
GridCurrentCell cc = this.grid.CurrentCell;
if(cc.Index == 2)
{
string newValue = cc.Renderer.ControlText;
string oldValue = this.grid[cc.RowIndex, cc.ColIndex].Text;
}
}