C# - 如何以窗口形式禁用上下文菜单?

时间:2014-11-04 09:39:15

标签: c#-4.0

我为窗口窗体创建了一个上下文菜单,每当我右键单击窗口时,都会弹出上下文窗口。但是,在某些情况下,我想在右键单击鼠标后禁用此上下文菜单弹出。有没有办法禁用/启用整个上下文菜单?

2 个答案:

答案 0 :(得分:0)

contextMenuStrip1.Visible = false;

答案 1 :(得分:0)

删除默认右键单击菜单的最简单方法是定义自己的(空)菜单:

myTextBox.ContextMenuStrip = new ContextMenuStrip();

这将在一行中删除默认的Windows右键单击选项。了解键盘快捷键(Ctrl-C, Ctrl-X, Ctrl-V, Ctrl-A, Ctrl-Z)仍可正常工作;你没有禁用基本功能,只能通过鼠标访问它。

对于另一个TextBox的ContextMenu中的TextBox,它有点棘手,但基本上你可以使用item的TextBox属性直接访问ToolStripItem中包含的TextBox。这个属性是一个vanilla System.Windows.Forms.TextBox,就像你在app中拥有的任何其他东西一样:

myToolStripTextBox.TextBox.ContextMenuStrip = new ContextMenuStrip();