CefSharp使用
1,安装 CefSharp.WinForms
2,禁用鼠标右键:
①新建类:
class MenuNoneHandler : IContextMenuHandler { public void OnBeforeContextMenu(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model) { return; } public bool OnContextMenuCommand(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame, IContextMenuParams parameters, CefMenuCommand commandId, CefEventFlags eventFlags) { return true; } public void OnContextMenuDismissed(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame) { return; } public bool RunContextMenu(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model, IRunContextMenuCallback callback) { return true; } }
②browser.MenuHandler = new MenuNoneHandler();
3,交互:
①注册交互对象名称及C#交互类
CefSharpSettings.WcfEnabled = true; browser.JavascriptObjectRepository.Settings.LegacyBindingEnabled = true; browser.JavascriptObjectRepository.Register("bound", new ScriptCallbackManager(), false);
②定义C#交互类(方法名用驼峰命名,否则不起作用)
public class ScriptCallbackManager { public void func1(string msg) { MessageBox.Show(msg); } }
③js调用
bound.func1("aaaa");
                    
                
                
            
        
浙公网安备 33010602011771号