摘要

在项目中使用了cefsharp,最后发现在触屏电脑上面,如果长按文本内容,会经常性的崩溃,发现是cefsharp的问题,最后也等不及了。然后就换了webkit.net这个开源的浏览器内核。

关于webkit

WebKit 是一个开源的浏览器引擎,与之相对应的引擎有Gecko(Mozilla Firefox 等使用)和Trident(也称MSHTML,IE 使用)。
同时WebKit 也是苹果Mac OS X 系统引擎框架版本的名称,主要用于Safari,Dashboard,Mail 和其他一些Mac OS X 程序。WebKit 前身是 KDE 小组的 KHTML,WebKit 所包含的 WebCore 排版引擎和 JSCore 引擎来自于 KDE 的 KHTML 和 KJS,当年苹果比较了 Gecko 和 KHTML 后,仍然选择了后者,就因为它拥有清晰的源码结构、极快的渲染速度。Apple将 KHTML 发扬光大,推出了装备 KHTML 改进型 WebKit 引擎的浏览器 Safari。

如何使用

首先需要下载Webkit.Net

官方地址:http://webkitdotnet.sourceforge.net/

下载之后,将bin下的文件拷贝到你的项目Debug下。

添加引用,引用WebKitBrowser.dll

测试

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using WebKit;
namespace Wolfy.WebKitDemo
{public partial class Form1 : Form{public Form1(){InitializeComponent();}private void Form1_Load(object sender, EventArgs e){WebKitBrowser browser = new WebKitBrowser();browser.Dock = DockStyle.Fill;browser.Navigate("file:///" + AppDomain.CurrentDomain.BaseDirectory + "www/setting.html");this.Controls.Add(browser);}}
}

结果

总结

最后选择了webkit.net作为winform内嵌的浏览器,首先winform自带的webbrowser与系统ie相关,兼容性不好。二是cefsharp,在触屏电脑上有个bug,就是如果长按页面的文本,就会出现崩溃。另外,安卓内嵌的webview也是基于webkit内核的,所以对触屏之类兼容性较好,本demo也在触屏电脑上测试了,没有cefsharp的长按崩溃的问题。

[Winform]WebKit.Net使用相关推荐

  1. Winform中将WebBrower浏览器控件由IE内核修改为Chrome的WebKit内核

    场景 Winform中自带一个浏览器控件WebBrower控件,使用此控件可以很轻易的实现一个桌面端的 浏览器. 新建Winform程序,然后在设计页面在工具箱中拖拽一个WebBrower控件. 然后 ...

  2. C#下Winform下使用WebKit、Geckofx、CefSharp对比及CefSharp代码实现

    C#Winform下使用WebKit.Geckofx.CefSharp对比及CefSharp代码实现 一.使用visual studio 2021自带的NuGet程序包管理器安装CefSharp 二. ...

  3. 构建基于Chromium的应用程序(Winform程序加载Html页面)

    chromium是google chrome浏览器所采用的内核,最开始由苹果的webkit发展而出,由于webkit在发展上存在分歧,而google希望在开发上有更大的自由度,2013年google决 ...

  4. 【转】C# 开发Chrome内核浏览器(WebKit.net)

    WebKit.net是对WebKit的.Net封装,使用它.net程序可以非常方便的集成和使用webkit作为加载网页的容器.这里介绍一下怎么用它来显示一个网页这样的一个最简单的功能. 第一步: 下载 ...

  5. 从零开始搭建基于CEFGlue的CB/S的winform项目

    基于CEF,用.net包装过的Xilium.CefGlue/3,基于此框架可以很方便在你的winform等C/S项目中搭建一个内建的浏览器 Chromium Embedded Framework (C ...

  6. 各浏览器内核与C#WinForm开发Demo

    一,各浏览器内核: (1)Trident:IE 6.7.8,傲游(双核心). QQ浏览器(双核心).360浏览器(双核心): (2)EdgeHTML:Chakra,Edge和其他UWP浏览器使用: ( ...

  7. 使用C#winform封装chrome浏览器

    最近有个项目需要用到高拍仪,高拍仪是第三方厂家生产的产品,我们想将这款产品嵌入我们自己公司的平台系统中,厂家提供的插件SDK的要求有点麻烦, 必须IE7/8/9/11,而实际上虽然客户那边的环境很复杂 ...

  8. c# 火狐浏览器怎么嵌入窗体中_正在学c# winform,问各位前辈一下 能调用火狐或者其他的浏览器吗?...

    你的位置: 问答吧 -> .NET -> 问题详情 正在学c# winform,问各位前辈一下 能调用火狐或者其他的浏览器吗? 主要是用来做自动浏览刷新网页的, 有的网站只能用火狐打开 很 ...

  9. 9种在wpf/winForm等客户端集成Web网页方案详解,全网最全,快收藏!!

    前言 B/S架构的Web程序几乎占据了应用软件的绝大多数市场,但是C/S架构的WinForm.WPF客户端程序依然具有很实用的价值,如设计类软件 AutoCAD与Autodesk Revit.WPS. ...

最新文章

  1. 联邦学习fate笔记小结
  2. 如何将struct System.Byte byte []转换为C#中的System.IO.Stream对象?
  3. 【资源】各种基础入门教程附下载地址
  4. ubuntu使用fail2ban_如何在Ubuntu 20.04上安装和配置Fail2ban
  5. Java标签Label,如何不使用continue和break跳出循环
  6. php mssql 新 id,MSSQL获取当前插入数据的id
  7. CodeForces 516E Drazil and His Happy Friends(数学+最短路)
  8. Antd-Select组件的深入用法
  9. Linux用户、用户组、文件权限设置
  10. 卡顿人生,如何拯救?
  11. php挂qq,PHP在线挂QQ个人隐私泄漏
  12. 关于WIN10显示“未安装任何音频输出设备” 英特尔(R)智音系统OED启动错误(代号10)解决办法
  13. JavaWeb网上购物系统项目源码+论文
  14. 收藏商品表设计_数据采集实战:商品详情页数据埋点
  15. 环信java,java集成环信 - IM Geek开发者社区-移动开发者社区-开源社区-IM Geek官网...
  16. android 4 源码目录,LXR 目录Android 源码
  17. 【OpenCV】人脸检测和识别
  18. 让你的APP实现即时聊天功能
  19. 前端开发需要学什么?
  20. 知云文献翻译安装及使用教程

热门文章

  1. GDCM:gdcm::UIDGenerator的测试程序
  2. GDCM:拷贝/复制DataSet的测试程序
  3. Boost:双图bimap与lambda表达式的测试程序
  4. ITK:像素是否在区域内
  5. VTK:模型之FinanceFieldData
  6. OpenCV SURF FLANN匹配单应性的实例(附完整代码)
  7. OpenGL 基于PBR的specular textured 镜面纹理的实例
  8. QML基础类型之point
  9. 经典C语言程序100例之五四
  10. matlab访问数组的元素,使用分类数组访问数据