天天看點

使用CEfSharp之旅(3)下載下傳檔案 彈出儲存框 IDownloadHandler

最近一直在做CEFsharp 方面的,遇到了下載下傳檔案的無法儲存的問題 。 記錄解決下。 主要是應用了 
IDownloadHandler
調用方法:
        web.MenuHandler = new MyWebContextMenu();
                web.DownloadHandler = new MyDownLoadFile();      
/// <summary>
    /// 下載下傳檔案
    /// </summary>
    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;
        }
    }