色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Cefsharp 的使用

汽車電子技術 ? 來源:程序猿知秋 ? 作者:程序猿知秋 ? 2023-02-28 09:47 ? 次閱讀

圖片

安裝

Cefsharp簡介

  • CEF , 全稱Chromium Embedded Framework ,基于谷歌 Chromium項目的開源Web Browser控件,它的主要用途是嵌入了第三方應用以實現瀏覽器相關的功能。例如國內的360安全瀏覽器的兼容模式即IE的內核,極速模式即Chromium內核;最近微軟新推出的Microsoft Edge也是基于Chromium開源項目實現的
  • CefSharp是Cef的C#版本,讓Chromium瀏覽器也可嵌入WinForms 中

安裝步驟

  • 第一步: 右鍵項目,點擊 管理NuGet程序包 , 輸入Cefsharp 關鍵字搜索, 選擇 **CefSharp.WinForms **進行安裝

圖片編輯

安裝完后,以packages.config中可以看到如下信息

圖片編輯

  • ** 第二步: 修改配置管理器,將平臺修改為X86或X64,Cef有32和64位之分**

圖片編輯

活動方案解決平臺 下拉,點擊新建

圖片編輯

**** **選擇 X86 ** ,點擊確定,接著關閉即可


圖片編輯

  • **** 第三步: 編寫代碼,初始化瀏覽器****
using CefSharp;
using CefSharp.WinForms;
using System.Windows.Forms;


namespace 我的瀏覽器
{
    public partial class Form1 : Form
    {
        // 瀏覽器對象
        public ChromiumWebBrowser chromeBrowser;
        public Form1()
{
            InitializeComponent();

        }


        public void InitCef()
{
            //參數設置
            CefSettings settings = new CefSettings();
          //  settings.Locale = "zh-CN";
            // settings.CefCommandLineArgs.Add("disable-gpu", "1");//去掉gpu,否則chrome顯示有問題
            Cef.Initialize(settings);
            //創建實例
            chromeBrowser = new ChromiumWebBrowser("https://www.baidu.com");
            // 將瀏覽器放入容器中
            this.Controls.Add(chromeBrowser);
            chromeBrowser.Dock = DockStyle.Fill;
        }


        private void Form1_Load(object sender, System.EventArgs e)
{
            // 初始化瀏覽器
            InitCef();
        }
    }
}

最終啟動程序,成功訪問百度

圖片編輯

常見疑問

右鍵菜單如何禁用?

  • 設置ChromiumWebBrowser的 MenuHandler屬性即可
  • chromeBrowser.MenuHandler = new MenuHandler();  //禁用右鍵菜單
    點擊并拖拽以移動
    

如何添加頁面加載完成回調事件?

  • 設置ChromiumWebBrowser的 FrameLoadEnd 屬性
  • public void InitCef()
    {
      //參數設置
      CefSettings settings = new CefSettings();
      //  settings.Locale = "zh-CN";
      // settings.CefCommandLineArgs.Add("disable-gpu", "1");//去掉gpu,否則chrome顯示有問題
      Cef.Initialize(settings);
      //創建實例
      chromeBrowser = new ChromiumWebBrowser("https://www.baidu.com");
      // 將瀏覽器放入容器中
      this.Controls.Add(chromeBrowser);
      chromeBrowser.Dock = DockStyle.Fill;
      //頁面加載完成事件
      chromeBrowser.FrameLoadEnd += webview_FrameLoadEnd;
    }
    
    
    private void webview_FrameLoadEnd(object sender, FrameLoadEndEventArgs e)
    {
      // 代碼
    }
    

瀏覽器中的 js如何回調到 winform窗體中?

  • 初始化chromeBrowser對象時,需要事先注冊好回調方法
  • public void InitCef()
    {
      //參數設置
      CefSettings settings = new CefSettings();
      Cef.Initialize(settings);
      //創建實例
      chromeBrowser = new ChromiumWebBrowser("https://www.baidu.com");
    
      // 注冊瀏覽器方法
      chromeBrowser.JavascriptObjectRepository.Settings.LegacyBindingEnabled = true;
      CefSharpSettings.WcfEnabled = true;
      chromeBrowser.JavascriptObjectRepository.Register("cefCustomObject", new CefCustomObject(chromeBrowser, this), isAsync: false, options: BindingOptions.DefaultBinder);
    
      // 將瀏覽器放入容器中
      this.Controls.Add(chromeBrowser);
      chromeBrowser.Dock = DockStyle.Fill;
    }
    

事先建立一個類,專門用來放需要回調的方法

internal class CefCustomObject
{


  // 瀏覽器對象
  private static ChromiumWebBrowser _instanceBrowser = null;
  // 主窗體
  private static Form1 _instanceMainForm = null;




  public CefCustomObject()
  {

  }


  public CefCustomObject(ChromiumWebBrowser originalBrowser, FrmMain mainForm)
  {
    _instanceBrowser = originalBrowser;
    _instanceMainForm = mainForm;
  }




  public void opencmd()
  {
    MessageBox.Show("更多**好看的內容**和**好玩的案例**請關注**我的微信公眾號: 程序猿知秋");
    ProcessStartInfo start = new ProcessStartInfo("cmd.exe", "/c pause");
    Process.Start(start);
  }

}
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 瀏覽器
    +關注

    關注

    1

    文章

    1035

    瀏覽量

    35464
  • CEF
    CEF
    +關注

    關注

    0

    文章

    37

    瀏覽量

    18491
  • 開源項目
    +關注

    關注

    0

    文章

    38

    瀏覽量

    7230
收藏 人收藏

    評論

    主站蜘蛛池模板: 欧美手机在线 | 97在线观看免费视频 | 疯狂做受XXXX高潮欧美日本 | 久久婷五月综合色啪首页 | 国产精品爽爽久久久久久无码 | 丝袜诱惑qvod| ASIAN大陆明星裸休合成PICS | 日韩综合网 | 老熟女重囗味GRANNYBBW | 久久久久琪琪精品色 | 一个人视频日本在线观看 | 俄罗斯19girl video9 | 2021国产精品国产精华 | 亚洲 日韩 在线 国产 视频 | 公主纯肉高H文 | 亚洲精品乱码电影在线观看 | 国产亚洲精品久久久999密臂 | 毛片手机在线 | HEYZO精品无码一区二区三区 | 骚浪插深些好烫喷了 | 国产综合自拍 偷拍在线 | 欧美午夜a级精美理论片 | 亚洲精品免费在线视频 | 色噜噜狠狠一区二区三区 | 4虎最新网址 | 麻豆天美国产一区在线播放 | 囯产免费精品一品二区三区视频 | 久久香蕉国产线看观看首页 | 在线免费公开视频 | 冰山高冷受被c到哭np双性 | 一区二区三区无码高清视频 | 欧美一区二区激情视频 | YELLOW视频在线观看最新 | 18videosex性欧美黑色 | 在线看片韩国免费人成视频 | 碰超成人在线公开免费视频 | 嗨嗨快播电影 | 爱穿丝袜的麻麻3d漫画acg | 抽插性奴中出乳精内射 | 欲乱艳荡少寡妇全文免费 | 快播看av |