CefSharp浏览器与网页端JS交互

一、安装CefSharp包

可以使用NuGet安装CefSharp包,或者直接从网上下载然后添加到项目里面。

二、引入命名空间

using CefSharp;

using CefSharp.WinForms;

三、定义公共变量

public ChromiumWebBrowser chromeBrowser;

四、初始化浏览器

//参数设置

CefSettings settings = new CefSettings();

settings.CefCommandLineArgs.Add("--ignore-urlfetcher-cert-requests", "1");

settings.CefCommandLineArgs.Add("--ignore-certificate-errors", "1");

Cef.Initialize(settings);

CefSharpSettings.LegacyJavascriptBindingEnabled = true;

CefSharpSettings.SubprocessExitIfParentProcessClosed = true;

//创建实例

chromeBrowser = new ChromiumWebBrowser("http://www.iefeel.com");

var jsEventObj = new JsEvent();

chromeBrowser.JavascriptObjectRepository.Register("csObj", jsEventObj, false, new BindingOptions { CamelCaseJavascriptNames = false });

//添加控件

this.Controls.Add(chromeBrowser);

chromeBrowser.Dock = DockStyle.Fill;

五、定义与JS交互对象

public class JsEvent

{

public void ShowMessage(string msg)

{

MessageBox.Show("This message is in C#\n\r" + msg);

}

}

六、网页JS调用C#方法

try{

csObj.ShowMessage("这是网页端JS发起的调用");

}catch(error){

//do nothing...

}

你可能感兴趣的:(CefSharp浏览器与网页端JS交互)