winform制作浏览器过程

1.依赖

1.1.依赖包

在这里插入图片描述
三个缺一不可

2.开始制作

2.1.新建winform页面

在这里插入图片描述

2.2.页面代码

 public partial class WebBrowser : UserControl
    {
        public WebBrowser()
        {
            InitializeComponent();
            IntStart();
        }
        /// <summary>
        /// 初始化浏览器
        /// </summary>
        private void IntStart()
        {
            CefSettings cefSettings = new CefSettings();
            //cefSettings.Locale = "zh_CN";  
            //cefSettings.CachePath = "cache";
            cefSettings.IgnoreCertificateErrors = true;
            cefSettings.CefCommandLineArgs.Add("enable-media-stream", "1");//enable webRTC 启用多媒体

            //Cef.Initialize(cefSettings, true, new BrowserProcessHandler());
            Cef.Initialize(cefSettings, true,true);//这里有坑,如果引入的版本比较高的话,需要调整参数,而且 Cef.Initialize 方法只允许初始化一次,建议放在Program 中初始化。
            string urlPath = "https://www.baidu.com";

            Cef.AddCrossOriginWhitelistEntry(urlPath, "https", "cefsharp.com", false);

            ChromiumWebBrowser browser = new ChromiumWebBrowser(urlPath)  //
            {
                Location = new Point(0, 0),
                MinimumSize = new Size(20, 20),
                Size = new Size(200, 300),
                Name = "浏览器",
                Dock = DockStyle.Fill,
                TabIndex = 5,
                KeyboardHandler = new KeyBoardHander(),
                DownloadHandler = new DownloadHandler(),
                MenuHandler = new MenuHandler(),
                RequestHandler = new RequestHandler(),
                 LifeSpanHandler = new LifeSpanHandler(),
            };
            //browser.RegisterJsObject("bound", new BoundObject());//可监控页面的事件,目前js框架无法实现互通。
            Controls.Add(browser);
        }
    }

顺带提一句:目前winform 嵌套浏览器页面中,监听事件,事件回调很难调试。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值