我的问题可能很简单,但我无法在网上找到具体的答案。
我有一个带有网格的winforms应用程序,其中我已经实现了一个右键单击单元格上显示的上下文菜单。这些单元格包含可以编辑的文本元素。当用户点击或双击单元格时,可以编辑文本,这就是我想要的。
问题是当文本处于编辑模式并且用户再次右键单击它时,相互显示2个上下文菜单。一个是我的上下文菜单,另一个是Windows右键单击文本,包括复制,粘贴等选项
我想知道是否有任何可以用于此类场景的“正在编辑的文本”或“打开的Windows默认上下文菜单”等事件?或者解决这个问题的正确方法是什么,我猜这个问题必须是常见问题。
在这些情况下,我想只显示Windows右键菜单,而不是我的。
答案 0 :(得分:0)
也许您需要Control.GotFocus事件:https://msdn.microsoft.com/en-us/library/system.windows.forms.control.gotfocus%28v=vs.110%29.aspx?f=255&MSPPError=-2147217396
您可以寻找焦点,然后防止控件中的右键单击,直到控件失去焦点(Control.LostFocus)。如果控件从右键单击,则可以打开上下文菜单(我认为)。