So when you click a child grid from outside of the child grid, you want the child currentcell to stay where it was previously, and not move to the clicked cell? If so, then try adding a OnClick override to the cell renderer class, and only call the baseclass if there is no currentcell.
protected override void OnClick(int rowIndex, int colIndex, MouseEventArgs e)
//only call baseclass if no current cell
base.OnClick(rowIndex, colIndex, e);