vb.net DataGridview показывает пользовательский ContextMenuStrip на редактируемой ячейке
Я пытаюсь показать пользовательское контекстное меню на своем сетевом представлении, и оно отлично работает, за исключением случаев, когда ячейка редактируется. Затем он показывает контекстное меню Windows по умолчанию с копией / вырезать /...
Есть ли способ перезаписать контекстную строку DataGridViewTextBoxCell или отключить ее?
Решение от Disable DataGridView System ContextMenu не работает для меня.
Private Sub DataGridView1_MouseDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles DocCostGroupDetsDataGridView.MouseDown
If e.Button = Windows.Forms.MouseButtons.Right Then
_CustomContextMenuStrip.fGetContextMenu()
_CustomContextMenuStrip.Show(DataGridView1, e.Location)
End If
End Sub
1 ответ
Решение
Private Sub DataGridView1_EditingControlShowing(ByVal sender As System.Object, _
ByVal e As DataGridViewEditingControlShowingEventArgs) _
Handles DataGridView1.EditingControlShowing
If TypeOf e.Control Is TextBox Then
With DirectCast(e.Control, TextBox)
.ContextMenuStrip = ContextMenuStrip2
End With
End If
End Sub