单击Cefsharp webbrowser container

时间:2016-12-24 14:34:34

标签: wpf winforms cefsharp

我正在使用cefsharp chromium网络浏览器作为浏览器控件开发WPF应用程序。在我的应用程序中,当右键单击Cefsharp浏览器时,我想显示一些控件,我可以显示控件。当我右键单击时,打开自定义菜单并单击容器,然后我无法关闭自定义菜单。

我的代码是

 _cefchrbrowser.Address = _address;
 _cefchrbrowser.MenuHandler = new CustomMenuHandler();

我的班级

public class CustomMenuHandler : IContextMenuHandler
{
    public void OnBeforeContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model)
    {
        model.Remove(CefMenuCommand.ViewSource);
        model.Remove(CefMenuCommand.Print);
        model.Remove(CefMenuCommand.Undo);
        model.Remove(CefMenuCommand.Redo);
    }

    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;
    }
}

单击浏览器时未选择任何自定义菜单项,我无法关闭菜单。

0 个答案:

没有答案