Ответ 1
Вероятно, вы могли бы взглянуть на свойство DataGridView.CurrentRow, которое является свойством только для чтения:
Возвращает строку, содержащую текущую ячейку.
Но в разделе замечаний записано:
Чтобы изменить текущую строку, вы должны установить свойство
CurrentCell
ячейки в нужной строке.
Кроме того, из DataGridView.CurrentCell Property, мы узнаем, что:
При изменении значения этого свойства событие SelectionChanged происходит перед событием CurrentCellChanged. Любое событие SelectionChanged обработчик, получающий доступ к свойству CurrentCell в это время, получит его предыдущее значение.
Итак, нет необходимости в том, чтобы вы фактически выбрали currentRow
becasue, который будет выбран, когда вы установите значение CurrentCell
(если у вас не будет кода, который будет выполнен внутри текущей области действия между SelectionChanged
и CurrentCellChanged
события). Попробуйте следующее:
//dgvIcbSubsInfo.Rows[currentRow].Selected = true;
dgvIcbSubsInfo.CurrentCell = dgvIcbSubsInfo.Rows[currentRow].Cells[0];