Операция недопустима, поскольку она приводит к повторному вызову функции setcurrentcelladdresscore
if (dataGridView6.CurrentCell.ToString() != "0" && dataGridView6.CurrentCell.ToString() != "") { if (e.ColumnIndex == 4 || e.ColumnIndex == 5 || e.ColumnIndex == 6) { // MessageBox.Show("1"); // BeginInvoke(new MethodInvoker(PopulateControl)); dataGridView6.CurrentCell = dataGridView6[3, dataGridView6.CurrentCell.RowIndex]; SendKeys.Send("{DOWN}"); } }
Что я уже пробовал:
if (dataGridView6.CurrentCell.ToString() != "0" && dataGridView6.CurrentCell.ToString() != "") { if (e.ColumnIndex == 4 || e.ColumnIndex == 5 || e.ColumnIndex == 6) { // MessageBox.Show("1"); // BeginInvoke(new MethodInvoker(PopulateControl)); dataGridView6.CurrentCell = dataGridView6[3, dataGridView6.CurrentCell.RowIndex]; SendKeys.Send("{DOWN}"); } }
Patrice T
недостаточно кода, чтобы понять, что вы делаете неправильно.
Bryian Tan
Не ясно, где находится разнесенный код в системе. Datagridview
жизненный цикл, но если вы Гугл[^] может дать вам некоторые идеи
Gerry Schmitz
Возня с "текущей ячейкой" при ссылке на "текущую ячейку".
Генерирующий события код без какого-либо контекста (вероятно, вызываемый из другого обработчика событий).
Вам придется долго ждать "ответа".