CEfSharp下载文件 弹出保存框 IDownloadHandler,WINfrom嵌入网页导出功能响应

using CefSharp;

 public ChromiumWebBrowser browser;
 NativeAppJsObjBasic NativeAppJsObj;

//窗体部分

private void FrmWebView_Load(object sender, EventArgs e)
        {
 
            browser = new ChromiumWebBrowser(URL);

            panel1.Controls.Add(browser);
            browser.Dock = DockStyle.Fill;
            NativeAppJsObj = new NativeAppJsObjBasic();
            browser.RegisterJsObject("NativeAppJsObj", NativeAppJsObj, true);
            NativeAppJsObj.OnSessionExpired += NativeAppJsObj_OnSessionExpired;
            browser.IsBrowserInitializedChanged += Browser_IsBrowserInitializedChanged;
            browser.DownloadHandler = new MyDownLoadFile();

        }


    ///


    /// 响应下载文件兼容
    ///

    public class MyDownLoadFile : IDownloadHandler
    {
        public void OnBeforeDownload(IBrowser browser, DownloadItem downloadItem, IBeforeDownloadCallback callback)
        {
            if (!callback.IsDisposed)
            {
                using (callback)
                {
                    callback.Continue(@"C:\Users\" +
                            System.Security.Principal.WindowsIdentity.GetCurrent().Name +
                            @"\Downloads\" +
                            downloadItem.SuggestedFileName,
                        showDialog: true);
                }
            }
        }

        public void OnDownloadUpdated(IBrowser browser, DownloadItem downloadItem, IDownloadItemCallback callback)
        {
            //downloadItem.IsCancelled = false;
        }
        public bool OnDownloadUpdated(CefSharp.DownloadItem downloadItem)
        {
            return false;
        }
    }

你可能感兴趣的:(C#)