CEfSharp
我也是初次接触,我就不重复 CEFSharp的安装配置了,自行搜索
在此贴出代码吧
private void InitializeChrom()//object sender, EventArgs e)
{
//textBox1.Text = "0";
//var setting = new CefSettings();
// 设置语言
//setting.Locale = "zh-CN";
//Cef.Initialize(setting);
var setting = new CefSettings();
setting.Locale = "zh-CN";
//缓存路径
setting.CachePath = "/BrowserCache";
//浏览器引擎的语言
setting.AcceptLanguageList = "zh-CN,zh;q=0.8";
//setting.LocalesDirPath = "/localeDir";
//日志文件
setting.LogFile = "/LogData";
setting.PersistSessionCookies = true;
setting.UserAgent = "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36";
setting.UserDataPath = "/userData";
Cef.Initialize(setting);
//CefSettings settings = new CefSettings();
//Cef.Initialize(settings);
webBrowser = new ChromiumWebBrowser("http://www.baidu.com");// Application.StartupPath + @"\Jmp.html");
webBrowser.Dock = DockStyle.Fill;
BrowserSettings browserSettings = new BrowserSettings();
browserSettings.FileAccessFromFileUrls = CefState.Enabled;
browserSettings.UniversalAccessFromFileUrls = CefState.Enabled;
browserSettings.WebSecurity = CefState.Enabled;
webBrowser.BrowserSettings = browserSettings;
//邦定类
webBrowser.DownloadHandler = new MyDownLoadFile();
//browser表示你的CefSharp对象使用它的RegisterJsObject来绑定你的.net类
webBrowser.RegisterJsObject("AsyncRun", new AsyncRun());
webBrowser.RequestHandler = new RequestHandler();
webBrowser.JsDialogHandler = new JsDialogHandler();
webBrowser.FrameLoadEnd += InitmethodAsync;
//webBrowser.FrameLoadEnd += webBrowser_FrameLoadEndEventArgs;
//添加事件
webBrowser.IsBrowserInitializedChanged += OnIsBrowserInitializedChanged;
//webBrowser.AddressChanged += OnAddressChanged;
//textBox1.Text += "1";
this.splitContainer1.Panel2.Controls.Add(webBrowser);
}
//网页加载完成时动作
private void webBrowser_FrameLoadEndEventArgs(object sender, FrameLoadEndEventArgs e)
{
string htmlstr = string.Empty;
if (e.Frame.IsMain)
{
webBrowser.GetSourceAsync().ContinueWith(taskHtml =>
{
htmlstr = taskHtml.Result;
});
}
//doc = StrToHtml(htmlstr);
this.strHtml = htmlstr;
textBox1.Text = e.url;//取当前页URL
}