C#将WebBowser控件替换为Chrome内核
摘要
由于最近要做一个浏览器式的软件,其中有不少地方需要使用到jQuery和BootStrap,但是在C#中,默认的WebBrowser控件默认使用的是IE的core,而低版本的IE在JS加载上总是容易有问题,因此,打算使用Chrome的内核替换IE。
准备工作
首先,你要明白Chrome浏览器的内核不叫Chrome,而是Webkit,因此,我们只要找到Webkit的项目就好了。
1.下载WebKit的项目bin,网址如下:
https://sourceforge.net/projects/webkitdotnet/files/WebKit%20.NET%200.x/0.5/WebKit.NET-0.5-bin-cairo.zip/download。
2.下载解压后的目录结构如下:
3.将bin文件夹下的所有(没错!是所有文件复制),并粘贴到项目文件夹下,目标目录是:项目名/bin/Debug/
4.导入Webkitbrowser的dll到你的项目中。在VS2015的操作如下(其他的类推):
在Solution Explorer下,选中你的项目名,然后右键,选择Add,然后选择Reference,如下图:
5.在弹出的对话框里。选择Browse -> Browse...,然后选择你的:项目名/bin/Debug下之前粘贴的WebKitBrowser.dll导入,结果如下图:
编码阶段
1.你要做的,首先选择你之前下载的bin目录下的WebKitBrowser.dll,然后复制,如下图:
2.在C#的控件栏中,自己建一个自定义的C#控件栏,例如我的叫WebBrowser,然后在工具栏中粘贴刚才复制的dll,最后效果如下图:
之后你就可以正常使用WebKitBrowser控件了。
3.大功告成了,通过这个网站可以测试浏览器的内核,网址:http://ie.icoa.cn/
至于运行代码,如下给出:
1 private void Form1_Load(object sender, EventArgs e)2 {3 webKitBrowser1.Navigate("http://ie.icoa.cn/");4 }
下面是配置前和配置后的对比:
配置前:
配置后:
致谢
感谢s_p评论中指出的问题,另外如果你想制作Release版而不是Debug的,你存放的目录应该是:项目名/bin/release。
补充
感谢园友的指出,WebKitBrowser这个项目目前已经不维护了,随着.Net版本的提升,也很有可能会出现问题,因此推荐另一个比较好用的CefSharp,具体流程和WebKitBrowser基本一致。
如果有园友想用CefSharp,欢迎查看这篇文章,讲的很详细,来自codeceo:请看今天推送的下一篇文章
结语
其实换个内核并没有那么复杂,勇于尝试,我想你也一定可以的,有疑问欢迎留言!
原文地址:http://www.cnblogs.com/gdyblog/p/WebKitBrowser.html
.NET社区新闻,深度好文,微信中搜索dotNET跨平台或扫描二维码关注
C#将WebBowser控件替换为Chrome内核相关推荐
- C#Winform将WebBowser控件替换为Chrome内核
摘要 由于最近要做一个浏览器式的软件,其中有不少地方需要使用到jQuery和BootStrap,但是在C#中,默认的WebBrowser控件默认使用的是IE的core,而低版本的IE在JS加载上总是容 ...
- C#Winform将WebBowser控件替换为webKitBrowser控件(IE浏览器内核改为Chrome内核)
摘要 由于最近要做一个浏览器式的软件,其中有不少地方需要使用到jQuery和BootStrap,但是在C#中,默认的WebBrowser控件默认使用的是IE的core,而低版本的IE在JS加载上总是容 ...
- js html 导出word 不用activexobject,javascript下用ActiveXObject控件替换word书签,将内容导出到word后打印第2/2页...
javascript下用ActiveXObject控件替换word书签,将内容导出到word后打印第2/2页 更新时间:2008年06月21日 22:57:31 作者: 由于时间比较紧,没多的时候 ...
- C# 浏览器控件 谷歌、火狐内核
1.XiliumCefGlue C# 用XiliumCefGlue做浏览器,JS和C#相互调用 https://gitlab.com/xiliumhq/chromiumembedded/cefglue ...
- js 将input、textarea、Select等控件替换成标签(span)
代码 function RemoveControl(elements) { var arrObj = new Array(); var count = elements.length; ...
- html指定ie内核,指定Webbrowser控件所用IE内核版本
如果电脑上安装了IE8或者之后版本的IE浏览器,在Visual Studio Webbrowser控件默认使用IE7兼容模式来显示网页内容.解决方法是在注册表中为你的进程指定引用IE的版本号. 比如我 ...
- SAP UI5 sap.ui.vk 命名空间内的控件介绍
SAP 电商云 Spartacus UI 里的 spare part 3D 模型展示,使用的控件来自 SAP UI5 sap.ui.vk 下的控件. sap.ui.vk 库为应用程序中 2D 和 3D ...
- Blazor验证控件
目录 概述--Blazor ValidationFormState控件 代码和示例 Blazor编辑设置 验证控件 验证器 StringValidator IValidation WeatherFor ...
- Adapter类型控件之ListView(列表控件)
(一)概述 Android中的列表控件飞创灵活,可以自定义每一个列表项,实际上每一个列表项就是一个View,在Android定义了3个列表控件:ListView.ExpandableListView和 ...
最新文章
- 遍历列表python_python列表的遍历与循环
- mysql binlog 目录_怎么查看mysql 的binlog日志存放的位置(linux和win)
- Django内置分页扩展
- php7 php5.6 array,[转]php5.6 升级到php7及变化
- Redis悲观锁、乐观锁和调用Lua脚本的优缺点
- Leecode刷题热题HOT100(14)——最长公共前缀
- python对数组缺失值进行填充
- 单例模式中的多线程分析synchronized
- js中this的用法
- intellij idea 使用 git stash
- PCIE协议免费分享
- php 阿里云短信接口 demo最新
- Zookeeper隐藏通道和羊群效应
- 200个计算机局域网适合什么,批处理检测局域网电脑是否开机(200多台电脑,不同网段,最好按主机名称检测)...
- pygame简易超级玛丽制作
- 【记录】mmsegmentation 训练自己的数据集
- 绘图神器draw.io(写文必备)
- JDK+JAVA+TOMCAT+MAVEN+IDEA的安装配置以及新建项目
- 科技爱好者周刊(第 193 期):前端与后端,谁更难?
- Beta分布(Beta Distribution)