2012-05-20 5 views
5

У меня есть DataGridView на форме.Как удалить строку DataGridView, нажав DeleteKey?

Я хочу удалить строки из сетки нажатием клавиши удаления, но кнопка удаления кажется мертвой, пока я не войду в CellEditMode.

Если я вхожу в CellEditMode, тогда ключ удаления работает, но, очевидно, только для удаления содержимого ячеек, а не для удаления строк.

DataGridView имеет AllowUserToDeleteRow = true, и сетка несвязана.

У меня есть другие решетки, где эта функция работает правильно, но не видит разницы.

+0

Имеет ли значение datagridview на второй форме фокус? Для принятия удаления необходимо сосредоточиться. Взгляните на этот вопрос за помощью по этому поводу http://stackoverflow.com/questions/5268735/c-sharp-winforms-how-do-you-set-focus-to-a-datagridview-component-on-a -form –

+0

Если мой комментарий не исправит вашу проблему, то дайте более точную информацию о том, как вы это настроили. –

+0

Да, у моего dgv есть фокус, я щелкнул и выбрал строки нормально, но я не могу их удалить. Пожалуйста, создайте две формы и поместите datagridview на каждый. Загрузите вторую форму (с первой) и попробуйте удалить dgvRow, нажав DeleteKey. – Bonaca

ответ

12

Возможна одна из причин, по которой функция удаления не работает, заключается в том, что вам нужно выбрать строку.

Это означает, что у вас есть SelectionMode, установленный на FullRowSelect, или означает, что вы ранее нажали на заголовки строк, которые находятся слева от столбцов.

+0

Дэвид, извините, я забыл голосовать. Я сделал это сейчас. – Bonaca

Смежные вопросы