如何隐藏CefSharp.WinForms.ChromiumWebBrowser右键单击上下文菜单? [英] How do I hide the CefSharp.WinForms.ChromiumWebBrowser right click context menu?

查看:1018
本文介绍了如何隐藏CefSharp.WinForms.ChromiumWebBrowser右键单击上下文菜单?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在项目中使用的是 CefSharp.WinForms.ChromiumWebBrowser v45。当我右键单击Web浏览器时,将显示默认的上下文菜单:

I'm using CefSharp.WinForms.ChromiumWebBrowser v45 in my project. When I right click into the web browser, the default context menu will show up:

但是我不想显示任何东西。我应该怎么办?

But I don't want to show anything. What should I do?

推荐答案

这是像我这样的懒惰人的实现。它基于CefSharp v53.0.0

This is the implementation for lazy people like me. It is based on CefSharp v53.0.0

public class CustomMenuHandler : CefSharp.IContextMenuHandler 
{
    public void OnBeforeContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model)
    {
        model.Clear();
    }

    public bool OnContextMenuCommand(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, CefMenuCommand commandId, CefEventFlags eventFlags)
    {

        return false;
    }

    public void OnContextMenuDismissed(IWebBrowser browserControl, IBrowser browser, IFrame frame)
    {

    }

    public bool RunContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model, IRunContextMenuCallback callback)
    {
        return false;
    }
}

使用方法

ChromiumWebBrowser browser = new ChromiumWebBrowser();
browser.MenuHandler = new CustomMenuHandler();

这篇关于如何隐藏CefSharp.WinForms.ChromiumWebBrowser右键单击上下文菜单?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆