欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

使用CefSharp在.Net程序中嵌入Chrome瀏覽器

 更新時(shí)間:2022年06月26日 10:30:55   作者:天方  
這篇文章介紹了使用CefSharp在.Net程序中嵌入Chrome瀏覽器的方法,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

有的時(shí)候,我們需要在程序中嵌入Web瀏覽器,其實(shí).Net Framework中本身就提供了WebBrowser控件,本身這個(gè)是最簡單易用的方案,但不知道是什么原因,這個(gè)控件在瀏覽網(wǎng)頁的時(shí)候有些莫名的卡頓,有的時(shí)候甚至能達(dá)到好幾秒,嚴(yán)重影響體驗(yàn)。

這個(gè)時(shí)候,我們可以考慮使用第三方瀏覽器來代替系統(tǒng)的WebBrowser,常見的方案是使用版本帝Chrome,Chrome本身提供了供第三方程序嵌入的方案Chromium Embedded Framework (CEF),但這個(gè)是C++的接口,在.Net程序中使用還是有一定的工作量的。不過目前已經(jīng)有一些開源的項(xiàng)目完成了這一封裝,其中的一個(gè)佼佼者就是CefSharp,WPF和WinForm的封裝都實(shí)現(xiàn)了,本文就簡單的介紹一下如何在WPF程序中使用CefSharp來嵌入Chrome瀏覽器。

安裝:

安裝的過程非常簡單,只要使用NuGet安裝CefSharp.Wpf即可。

PM> Install-Package CefSharp.Wpf

安裝過程本身比較常規(guī),不過值得一提的是,這個(gè)包非常大,由于集成了x86和x64的版本,整個(gè)包(加上幾個(gè)依賴的包)達(dá)到了200多mb,基于眾所周知的原因,和Nuget的訪問一直不大通暢,有時(shí)還抽風(fēng)整個(gè)過程非常漫長,一定要有足夠的耐心以及人品。

修改編譯選項(xiàng):

由于Chrome是原生程序,目前CefSharp還不能做到32位和64位自動(dòng)識(shí)別,不能使用默認(rèn)的AnyCPU的編譯選項(xiàng),需要修改一下配置管理器,改成x86或x64才行。

使用:

使用的過程比較簡單,直接使用如下代碼即可。

    private void MainWindow_Loaded(object sender, RoutedEventArgs e)
    {
        var setting = new CefSharp.CefSettings();
        CefSharp.Cef.Initialize(setting, true, false);

        var webView = new CefSharp.Wpf.ChromiumWebBrowser();
        this.Content = webView;

        webView.Address = "http://www.cnblogs.com/TianFang/";
    }

參數(shù)設(shè)置

在實(shí)現(xiàn)了.Net程序中嵌入Chrome瀏覽器后,下一步的個(gè)性化操作就是加入一些設(shè)置了,,我們可以看到在使用Chrome控件前,有如下一個(gè)操作:

    var setting = new CefSharp.CefSettings();
    CefSharp.Cef.Initialize(setting, true, false);

這個(gè)setting變量就是用來存放chrome的全局設(shè)置的地方,當(dāng)需要進(jìn)行設(shè)置的時(shí)候,只需要對(duì)它進(jìn)行修改即可。例如,我們要修改緩存目錄,只需要如下設(shè)置即可:

    var setting = new CefSharp.CefSettings()
    {
        CachePath = Directory.GetCurrentDirectory() + @"\Cache",
    };

另外,有的設(shè)置是通過啟動(dòng)參數(shù)傳入的,這些啟動(dòng)參數(shù)存放在CefCommandLineArgs成員中了,通過字符串的形式傳入。例如,我們要給Chrome程序加一個(gè)代理服務(wù)器,則可以修改如下:

setting.CefCommandLineArgs.Add("--proxy-server", "http://127.0.0.1:8877");

到此這篇關(guān)于使用CefSharp在.Net程序中嵌入Chrome瀏覽器的文章就介紹到這了。希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論