• 使用CEF作为浏览器


    c# 内嵌chrome (CEFSharp)首次

    首先标记一个大坑!!!:

    不管哪个版本,都需要在解决方案---配置管理器---平台---改为X86。否则一直打开是空白的窗口。坑了我一天都快炸了。

    步骤一、创建一个winform应用程序。使用NuGet添加CefSharp。然后安装完成后,完全关闭vs并重新打开。(智障)

    cefsharp45及以上版本需要VC2013:https://www.microsoft.com/en-us/download/details.aspx?id=40784

    步骤二、这个教程说可以配置anycpu。配anycpu需要解决方案属性“首选32位”,改csproj和App.config文件。否则你看引用那一堆小叹号。此方法弃用。既然不能很好的支持anyCpu,就别出方法坑人了= =。最后还需要配置管理器改成平台X86才行。辣鸡。(但是nuget包下载后有个readme,第一条就是确保你设置了X86或X64.不会与anycpu一起工作。所以此攻略说的还是有毛病)

    步骤二、在解决方案右键----“配置管理器”----平台---“X86”.(没找到选项就新建一个)。即可!!

    步骤三、

    using CefSharp;
    using CefSharp.WinForms;
    

      

    public ChromiumWebBrowser chromeBrowser;
    
    public void InitializeChromium()
    {
       CefSettings settings = new CefSettings();
       // Initialize cef with the provided settings
       Cef.Initialize(settings);
       // Create a browser component
       chromeBrowser = new ChromiumWebBrowser("http://ourcodeworld.com");
       // Add it to the form and fill it to the form window.
       this.Controls.Add(chromeBrowser);
       chromeBrowser.Dock = DockStyle.Fill;
    }
    

      此处的settings实例化再Cef去初始。反正是默认的,可以Cef.Initialize();即可

    public Form1()
    {
         InitializeComponent();
         // Start the browser after initialize global component
         InitializeChromium();
    }
    

      

    private void Form1_FormClosing(object sender, FormClosingEventArgs e)
    {
         Cef.Shutdown();
    }
    

      

    逻辑:

    一、在form构造函数里,初始化完全局组件后,建立一个初始化方法。

    1、CefSetting实例化一个对象settings

    2、用Cef去初始化settings。------------Cef.Initialize(settings);

    3、实例化ChromiumWebBrower对象(参数是网址)

    4、把对象加载到控件里。设为DockStyle.Fill

    二、关闭窗体

    Cef.Shutdown();

    本文源码项目地址:可fork。(第一个最有用的最简单demo:)

    https://gitee.com/HuLuMiaoMiao/FirstCefSharp.git

    资料:

    gitHub官方解答如何使用CefSharp!!!:

    https://ourcodeworld.com/articles/read/173/how-to-use-cefsharp-chromium-embedded-framework-csharp-in-a-winforms-application

    cef gitHub项目地址:

    https://github.com/cefsharp/CefSharp

    CefSharp.MinimalExample :包括WPF、WinForms等最简单实现

    git@github.com:hulumiaomiao/CefSharp.MinimalExample.git

    您的资助是我最大的动力!
    金额随意,欢迎来赏!

  • 相关阅读:
    js对象的直接赋值、浅拷贝与深拷贝
    如何使ElementUi中的el-dropdown传入多参数
    机器学习之垃圾邮件分类2
    机器学习之手写数字识别-小数据集
    机器学习之深度学习-卷积
    机器学习之朴素贝叶斯-垃圾邮件分类
    机器学习之分类与监督学习,朴素贝叶斯分类算法
    机器学习之主成分分析(PCA&特征选择)
    机器学习之逻辑回归实践
    机器学习之特征选择
  • 原文地址:https://www.cnblogs.com/hulumiaomiao/p/8574614.html
Copyright © 2020-2023  润新知