WinForm利用CefSharp调用ChromiumWebBrowser,与JS交互

第一次写,一开始想用自带的webbrowser载入百度地图,但不支持H5导致不能画热力图,后来改成CefSharp解决。

参考内容链接

然后开始写C#与JS交互的代码,结果因为2019年11月CefSharp更新了接口,导致

WebBrowser.RegisterJsObject("jsObj", new JsEvent(), new CefSharp.BindingOptions() { CamelCaseJavascriptNames = false }); //交互数据

这一句报错,提示 This method has been removed, see https://github.com/cefsharp/CefSharp/issues/2990 for details on migrating your code.

我到github上查看解决办法,我使用页面上给出的办法依然不能解决JS无法调C#的问题,后来用以下办法解决,希望对需要的人有帮助。

我把我的代码和github上的代码都贴出来

github的代码

CefSharpSettings.LegacyJavascriptBindingEnabled = true;
CefSharpSettings.WcfEnabled = true;
browser.JavascriptObjectRepository.Register("bound", new BoundObject(), isAsync:false, options: BindingOptions.DefaultBinder);

我的代码

CefSharpSettings.LegacyJavascriptBindingEnabled = true;
CefSharpSettings.WcfEnabled = true;
BindingOptions bindingOptions = new BindingOptions();
bindingOptions.CamelCaseJavascriptNames = false;
chromeBrowser.JavascriptObjectRepository.Register("jsObj", new JsEvent(), isAsync: false, options: bindingOptions);

你可能感兴趣的:(js,c#)