使用CefSharp浏览文件并获取绝对路径

时间:2018-07-09 09:52:18

标签: c# cefsharp

我正在使用Cefsharp v63.0.3 NuGet软件包,在C#Windows Form App中,我有一个文件上传按钮(HTML表单输入类型文件)。我需要使用CefSharp从“文件上传”按钮浏览的文件的绝对路径。看了几篇文章后,我发现“ IDialogHandler”可用于文件上传,但是我对如何实现此目标感到困惑。请帮帮我。

Form1.cs

public void InitializeChromium()
    {
        CefSettings settings = new CefSettings();

        settings.CefCommandLineArgs.Add("enable-media-stream", "1");

        Cef.Initialize(settings);

        chromeBrowser = new ChromiumWebBrowser("localhost/myproject/index.html");

        this.Controls.Add(chromeBrowser);

        chromeBrowser.DialogHandler = new TempFileDialogHandler();

        chromeBrowser.Dock = DockStyle.Fill;
    }

TempFileDialogHandler.cs

    public class TempFileDialogHandler : IDialogHandler
    {
         public bool OnFileDialog(IWebBrowser browserControl, IBrowser browser, CefFileDialogMode mode, string title, string defaultFilePath, List<string> acceptFilters, int selectedAcceptFilter, IFileDialogCallback callback)
          {
              //callback.Continue(selectedAcceptFilter, new List<string> { Path.GetRandomFileName() });

              return true;
          }
      }

谢谢!

0 个答案:

没有答案