sbe*_*kur 2 .net c# datagridview winforms
当用户右键单击DataGridViewTextBoxCell时,是否有人知道如何禁用系统上下文菜单?我试图在DataGridView级别覆盖WndProc(因为没有WndProc在Cell级别上覆盖),但似乎没有任何工作.任何帮助将不胜感激.
以下是我在常规TextBox中使用的方法,但是,我需要以相同的方式为DataGridViewCell工作吗?
public class NoContextTextBox : TextBox {
private static readonly int WM_CONTEXTMENU = 123;
protected override void WndProc(ref Message m) {
if (m.Msg != WM_CONTEXTMENU) {
base.WndProc(ref m);
}
}
}
Run Code Online (Sandbox Code Playgroud)
这对我有用:
private void dataGridView1_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
{
e.Control.ContextMenu = new ContextMenu();
}
Run Code Online (Sandbox Code Playgroud)
只需将ContextMenu属性设置为DataGridView的EditingControlShowing事件中的新(空)ContextMenu.
| 归档时间: |
|
| 查看次数: |
4868 次 |
| 最近记录: |