正 文:
由于Google Chrome采用了WebKit内核,由此使得WebKit内核浏览器的人气迅速攀升。对于庞大的webkit开源程序,普通 程序员一般无需接触。通过WebKit.NET,我们也可以开发一些简单的浏览器。WebKit.NET 是一个 C# 的组件封装了 WebKit 浏 览器引擎,通过它可以在 .NET 应用中简单的使用 WebKit 浏览器引擎。 使用方法也很简单,首先到 http://webkitdotnet.sourceforge.net/ 下载webkit.net编译好的dll文件(Win32 Binary ),目前最新的是 2010-08-28 发布的 0.5 版本。 然 后把WebKitBrowser控件拉进工具箱:VS工具–》选择工具项–》.NET Framework组件–》浏览–》选择 “WebKitBrowser.dll”,这时WebKitBrowser就应该出现在左侧的公共控件里了。使用的时候直接拖曳到窗口里使用即 可,WebKitBrowser的使用方法和IE的内核webbrowser类似。 WebKitBrowser简单用法:1、访问某个网页。
2、加载网页完成时。
{
textBox1.Text = webKitBrowser1.Url.ToString ();
}
需要注意的问题:
1、webkit目前只有32位版本的,因此如果你是64位windows系统,将无法正常使用。为了兼容,需要将调试平台的cpu选择为 X86(vs默认是 any cpu)。2、需要把从网上下载下来的一大堆dll文件放在输出目录里,和 最终的可执行文件 sample.exe 放在一个目录里,不能放在其他文件夹或子目录,否则 WebKit 出错。3、如果出错,检查引用里是否引用了 WebKit.Interop and WebKitBrowser. 飘易认为的 WebKit.net 封装的 bug。1、打开新窗口时的bug。
在 事 件 private void webKitBrowser1_NewWindowCreated(object sender, NewWindowCreatedEventArgs args) 和 private void webKitBrowser1_NewWindowRequest(object sender, NewWindowRequestEventArgs args) 里 都无法正常获取新的 url 。
{
webKitBrowser1 = args.WebKitBrowser;
} private void webKitBrowser1_NewWindowRequest(object sender, NewWindowRequestEventArgs args)
{
MessageBox.Show(args.Url);
}
2、DOM模型,如 webKitBrowser1.DocumentText 不好利用。 当然,以上都是飘易个人之看法,不免贻笑大方。可以参考另外一种 C# GeckoFX内核浏览器。