DataGridView. Editmode = EditOnEnter. Как Выбрать строку для Удаления его?

Когда я использую EditMode = EditOnEnter, ячейка вводит в editmode, когда я выбираю строку.

Трудно пользователю выбрать RowSelector для Удаления строки.

Вы знаете какой-либо Прием?

6
задан x77 8 July 2010 в 19:56
поделиться

2 ответа

Я пробую этот трюк:

При щелчке по ячейке:

  • if index = - 1 EndEdit и EditMode = DataGridViewEditMode.EditOnKeystrokeOrF2
  • Иначе, если EditOnKeystrokeOrF2 - восстановить EditMode и BeginEdit

Private Sub dgv2_CellClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles dgv2.CellClick
    If e.ColumnIndex = -1 Then
       dgv2.EditMode = DataGridViewEditMode.EditOnKeystrokeOrF2
       dgv2.EndEdit()
    ElseIf dgv2.EditMode <> DataGridViewEditMode.EditOnEnter Then
       dgv2.EditMode = DataGridViewEditMode.EditOnEnter
       dgv2.BeginEdit(False)
    End If
End Sub
8
ответ дан 10 December 2019 в 02:42
поделиться

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

Пользователь может нажать клавишу Escape, чтобы выйти из режима редактирования, после чего строку можно будет удалить. Также вы можете выбрать другой режим DataGridViewEditMode (см. http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridvieweditmode.aspx ), например DataGridViewEditMode.EditOnKeystroke или EditOnKeystroke или EditOnKeystroke. оба хороши с точки зрения удобства использования.

1
ответ дан 10 December 2019 в 02:42
поделиться