cefSharp下载文件代码

cefSharp下载文件代码

cefSharp如何下载代码呢,如下图


具体代码如下

1、创建一个下载类,实现下载接口

    public class DownloadHandler : IDownloadHandler
    {
        public event EventHandler<DownloadItem> OnBeforeDownloadFired;

        public event EventHandler<DownloadItem> OnDownloadUpdatedFired;

        BrowserForm mainForm;

        public DownloadHandler(BrowserForm form)
        {
            mainForm = form;
        }

        public void OnBeforeDownload(IBrowser browser, DownloadItem downloadItem, IBeforeDownloadCallback callback)
        {
           
        }

        public void OnDownloadUpdated(IBrowser browser, DownloadItem downloadItem, IDownloadItemCallback callback)
        {

        }

        public void OnBeforeDownload(IWebBrowser chromiumWebBrowser, IBrowser browser, DownloadItem downloadItem, IBeforeDownloadCallback callback)
        {
            var handler = OnBeforeDownloadFired;
            if (handler != null)
            {
                handler(this, downloadItem);
            }

            if (!callback.IsDisposed)
            {
                using (callback)
                {
                    callback.Continue(downloadItem.SuggestedFileName, showDialog: true);
                }
            }
        }

        public void OnDownloadUpdated(IWebBrowser chromiumWebBrowser, IBrowser browser, DownloadItem downloadItem, IDownloadItemCallback callback)
        {
            var handler = OnDownloadUpdatedFired;
            if (handler != null)
            {
                handler(this, downloadItem);
            }
        }
    }

2、接入该类

            browser = new ChromiumWebBrowser("bfw.wiki")
            {
                Dock = DockStyle.Fill,
            };
            browser.LifeSpanHandler = new OpenPageSelf();
            browser.MenuHandler = new CustomMenuHandler();
            browser.DownloadHandler = new DownloadHandler(this);
Ok,就这么简单,开发环境vs2019 netframe4.5.2

{{collectdata}}

网友评论0