CefSharp之初次見面,請多關照

C#自帶的webbrowser內核是IE內核,即:Trident內核。但是不是很好用,但是日常工作還是可以用的。

在網上搜了好多改變內核的,後來發現WebKit.NET,但是開發者早已放棄維護和更新。

附上官網下載鏈接:

https://sourceforge.net/projects/webkitdotnet/files/WebKit%20.NET%200.x/0.5/WebKit.NET-0.5-bin-cairo.zip/download

附上百度雲文件下載鏈接:

https://pan.baidu.com/s/1cDYVbey_t-AT_MTa3I6hwA 密碼:ftqs

下載好文件後解壓,找到WebKitBrowser.dll文件,將其拖拽到VS工具欄中,即可。不過不建議用,這個項目已經被放棄了。

後來又發現一個CefSharp,這個一直在更新,所以我打算用這個。

附上官網鏈接:

http://cefsharp.github.io/

附上項目github鏈接:

https://github.com/cefsharp/CefSharp

附上百度雲文件下載鏈接:

https://pan.baidu.com/s/1pzaypc8d0X3Qdo2hB5d9Vg 密碼:p4zn

或者通過VS的NuGet包下載安裝,我使用的是VS17。

安裝過程如下:

右擊項目的引用,選擇“管理NuGet程序包”。


在“瀏覽”搜索欄中搜索CefSharp,選擇CefSharp.WinForms下載安裝(我做的是winforms,若做的是Wpf,請安裝CefSharp.Wpf),我安裝過了,所以是更新。


安裝好之後,會在項目下生成一個packages.config文件,裏面是包的版本控制及Framework版本,代碼如下:

<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="cef.redist.x64" version="3.3239.1723" targetFramework="net461" />
  <package id="cef.redist.x86" version="3.3239.1723" targetFramework="net461" />
  <package id="CefSharp.Common" version="63.0.3" targetFramework="net461" />
  <package id="CefSharp.WinForms" version="63.0.3" targetFramework="net461" />
</packages>

在項目目錄下生成一個packages目錄:


然後右擊“引用”,選擇“添加引用”。引用以下dll文件,下面是文件對應目錄。

packages\CefSharp.WinForms.63.0.3\CefSharp\x86\CefSharp.WinForms.dll

packages\CefSharp.Common.63.0.3\CefSharp\x86\CefSharp.BrowserSubprocess.Core.dll

packages\CefSharp.Common.63.0.3\CefSharp\x86\CefSharp.Core.dll

packages\CefSharp.Common.63.0.3\CefSharp\x86\CefSharp.dll

,引用完之後,引用會出現感嘆號,因爲平臺需要設置以下,我上述dll文件都是x86的,所以我這裏需要配置一下項目運行平臺。

右擊項目,在生成中,平臺目標選擇X86:


配置完整個之後還需要配置一下活動平臺,如下:



然後在此處可以選擇X86了


此時,再看引用,已正常。然後進行測試。測試代碼如下(請自行搭建測試項目):

使用代碼:

public static ChromiumWebBrowser Url(string url)
        {
            ChromiumWebBrowser chromiumWebBrowser = new ChromiumWebBrowser("about:blank ");
            chromiumWebBrowser.Load(url);
            chromiumWebBrowser.Dock = DockStyle.Fill;
            return chromiumWebBrowser;
        }

我將其封裝到一個函數裏面,然後返回ChromiumWebBrowser對象。

調用代碼:

string url = "https://blog.csdn.net/BangSong";
ChromiumWebBrowser chromiumWeb = CefSharpWebbrower.Url(url);
tabPanel.Controls.Add(chromiumWeb);

其中,tabPanel爲一個面板控件,將webbrowser添加上去,即可。

測試結果:






發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章