>> so it redraws the cells background after what I have drawed on DrawCell
Are you drawing the selection before you call the baseclass? If so, try switching the order of drawing the selection color and the base class call.
2.
The problem may be that bu default, when you click a row header, the current cell is moved ot column 1, an dthis is where you color is being drawn. Try code like this to see if it handles this problem.
private int originalCol = -1;
private void gridDataBoundGrid1_CurrentCellMoving(object sender, GridCurrentCellMovingEventArgs e)
{
originalCol = this.gridDataBoundGrid1.CurrentCell.MoveToColIndex;
}
private void gridDataBoundGrid1_CurrentCellActivating(object sender, GridCurrentCellActivatingEventArgs e)
{
if(originalCol == 0)
e.ColIndex = 0;
}