Haga clic derecho para seleccionar la fila en dataGridView

Necesito seleccionar una fila en dataGridView con un clic derecho antes de que se muestre ContextMenu porque contextMenu depende de la fila.

He intentado esto:

 if (e.Button == MouseButtons.Right)
        {

            var hti = dataGrid.HitTest(e.X, e.Y);
            dataGrid.ClearSelection();
            dataGrid.Rows[hti.RowIndex].Selected = true;
        }

o:

private void dataGrid_CellMouseDown(object sender, DataGridViewCellMouseEventArgs e)
    {
        if (e.Button == MouseButtons.Right)
        {
            dataGrid.Rows[e.RowIndex].Selected = true;
            dataGrid.Focus();
        }
    }

Esto funciona pero cuando intento leer dataGrid.Rows [CurrentRow.Index] solo veo la fila seleccionada con el botón izquierdo y no las seleccionadas con el botón derecho ..

Respuestas a la pregunta(4)

Su respuesta a la pregunta