最近一直在做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;
}
}