C# 关于浏览器——WebKit篇
生活随笔
收集整理的這篇文章主要介紹了
C# 关于浏览器——WebKit篇
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
最近要寫一個瀏覽器包裹一個網站,試了各種瀏覽器插件,記錄一下。
用了WebKit.net,這個復制了它的Dll什么的一通操作,最終這樣:
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using Microsoft.Win32; using WebKit;namespace casicloud {public partial class mainForm : Form{private WebKit.WebKitBrowser browser = new WebKitBrowser();public mainForm(){InitializeComponent();}private void Form1_Load(object sender, EventArgs e){ browser.Dock = DockStyle.Fill;//browser.NewWindowRequest += new NewWindowRequestEventHandler(browser_NewWindowRequest);browser.NewWindowCreated += new NewWindowCreatedEventHandler(browser_NewWindowCreated);//browser.DocumentCompleted+=new WebBrowserDocumentCompletedEventHandler(browser_DocumentCompleted);panel1.Controls.Add(browser);browser.IsWebBrowserContextMenuEnabled = false;browser.ContextMenuStrip= contextMenu;browser.Navigate("http://localhost"); }void browser_NewWindowCreated(object sender, NewWindowCreatedEventArgs e){ e.WebKitBrowser.Navigating += new WebBrowserNavigatingEventHandler(WebKitBrowser_Navigating); this.Controls.Add(e.WebKitBrowser);}void WebKitBrowser_Navigating(object sender, WebBrowserNavigatingEventArgs e){ WebKitBrowser subBrowser = (WebKitBrowser)sender; subBrowser.Stop();subBrowser.Dispose();this.Controls.Remove(subBrowser);browser.Navigate(e.Url.ToString());}//退出系統private void MainMenu_System_Quit_Click(object sender, EventArgs e){Application.Exit();}//前進private void MainMenu_Option_Forward_Click(object sender, EventArgs e){browser.GoForward();}//后退private void MainMenu_Option_Back_Click(object sender, EventArgs e){browser.GoBack();}//刷新private void MainMenu_Option_Refresh_Click(object sender, EventArgs e){browser.Reload(WebBrowserRefreshOption.Completely);}//防止在新窗口打開鏈接private void browser_NewWindow(object sender, CancelEventArgs e){e.Cancel = true;}private void MainMenu_System_Option_Click(object sender, EventArgs e){setup s = new setup();s.ShowDialog();}private void MainMenu_Option_Clean_Click(object sender, EventArgs e){} } }然后發現在它的創建新窗口事件里面無法獲取URL和攔截,網上查了一下,版本已經沒有更新和維護了,果斷棄坑。
這個網頁顯示的效果還算是不錯,如果就是簡單包裝,可以試著用一下,相比微軟的WebBrowser對環境依賴小很多。
總結
以上是生活随笔為你收集整理的C# 关于浏览器——WebKit篇的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: jqueryMobile 过度
- 下一篇: Office Web Apps 非专业测