Щелкните правой кнопкой мыши, чтобы выбрать строку в dataGridView

Мне нужно выбрать строку в dataGridView, щелкнув правой кнопкой мыши перед показом ContextMenu, потому что contextMenu является row-dependendt.I '

мы пробовали это:

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

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

или же:

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

Это работает, но когда я пытаюсь прочитать dataGrid.Rows [CurrentRow.Index], я вижу только те строки, которые были выбраны левой кнопкой мыши, а не те, которые были выбраны правой кнопкой мыши.

Ответы на вопрос(4)

Ваш ответ на вопрос