1. 程式人生 > >C# (WebKit初探)WebKit.net最簡單使用方法

C# (WebKit初探)WebKit.net最簡單使用方法

WebKit.net是對WebKit的.Net封裝,使用它.net程式可以非常方便的整合和使用webkit作為載入網頁的容器。這裡介紹一下怎麼用它來顯示一個網頁這樣的一個最簡單的功能。

第一步:

下載WebKit.net 的bin檔案。別小看這一步,你不一定能下載成功,原因你懂的。

第二步:

新建一個WindowsForms工程。

image

然後把下載好的webkit.net bin目錄下的所有檔案複製到新建工程的bin/Debug/目錄下。

新增引用,通過瀏覽新增對“WebKitBrowser.dll”的引用。

image

第三步:

來寫寫程式碼了。雙擊Form1的窗體進入程式碼,寫下這幾行程式碼:

 private void Form1_Load(object sender, EventArgs e)
        {
            WebKit.WebKitBrowser browser = new WebKitBrowser();
            browser.Dock = DockStyle.Fill;
            this.Controls.Add(browser);
            browser.Navigate("http://www.lixin.me");
        }

執行看看效果:

李鑫的個人主頁

與IE核心的WebBrowser對比:

非常簡單的三步就完成了。可是話說回來了,時下都流行一步到位的,例如使用System.Windows.Forms.WebBrowser 。

使用.Net框架自帶的,呼叫IE核心的WebBrowser來顯示網頁也許更簡單些,只需要在新建的工程中寫下這麼幾行程式碼便可:

  private void Form1_Load(object sender, EventArgs e)
        {
            WebBrowser browser = new WebBrowser();
            browser.Dock = DockStyle.Fill;
            this
.Controls.Add(browser); browser.Navigate("http://www.lixin.me"); }

執行起來的效果看起來差不多,肉眼基本只能看出字型稍微不同而已:

image

既然都差不多,那為什麼還不厭其煩的去下載幾個M的dll來顯示網頁呢?這是因為如果使用IE核心的WebBrowser我們無法預知對網頁的顯示效果,例如你的電腦是xp,可能會呼叫ie6作為載入器,如果是win7,可能會呼叫ie8作為載入器,而他們的顯示效果是不完全一樣的。下面用一個例子來看看。

 private void Form1_Load(object sender, EventArgs e)
        {
            WebBrowser browser = new WebBrowser();
            browser.Dock = DockStyle.Fill;
            browser.Navigate("http://css3.zxq.net/doraemon/doraemon_css3.html");
            splitContainer1.Panel1.Controls.Add(browser);

            WebKit.WebKitBrowser kitBrowser = new WebKitBrowser();
            kitBrowser.Dock = DockStyle.Fill;
            kitBrowser.Navigate("http://css3.zxq.net/doraemon/doraemon_css3.html");
            splitContainer1.Panel2.Controls.Add(kitBrowser);
        }

效果圖如下:

image

本機的系統是win7+IE9,但是通過WebBrowser呼叫,估計仍然使用的是IE8核心,所以顯示效果很差。

通過這樣左右對比,可以看出多了一步麻煩,是有必要的。