【问题标题】:WebView2 file download notification boxWebView2文件下载通知框
【发布时间】:2021-08-17 20:41:12
【问题描述】:

我有一个看起来很愚蠢的问题。我已经在 WebView2 应用程序上工作了几天了。在今天之前,当我在应用程序中下载文件时,我会在左下角看到通常的下载通知框。现在我在右上角看到了这个弹出窗口。我不知道发生了什么变化。我回到了旧代码,在其中我没有看到这种行为,它也在那里。我需要把它移回左下角。有谁知道我做了什么或如何改回来?谢谢你的帮助。凯文。

【问题讨论】:

    标签: webview2


    【解决方案1】:

    Edge 浏览器和 WebView2 Runtime 将下载 UX 更新为您现在看到的。 WebView2 release notes 说明这发生在 2021 年 7 月 26 日附近。

    下载 UX 在 WebView2 Runtime 中实现。如果您有 WebView2 运行时的较旧的固定版本副本,您将能够看到旧的下载 UX。更改 WebView2 SDK 版本不会更改您获得的下载 UX。

    这是 WebView2 的默认下载 UX。您可以使用 CoreWebView2.DownloadStarting event 和相关 API 将其替换为您自己的自定义下载 UX。

    【讨论】:

    • 我得出的结论是,原因是我的代码之外的某种底层更新。感谢您的确认。
    【解决方案2】:

    我建议你完全控制对话框(我认为你不能轻易移动它)。

    您可以通过订阅CoreWebView2.DownloadStarting 事件来做到这一点: CoreWebView2.DownloadStarting.

    CoreWebView2DownloadStartingEventArgs 有一个属性DownloadOperation(请参阅CoreWebView2DownloadOperation,让您可以访问进度。

    在这里,您可以完全定义在显示进度对话框的情况下应该发生什么。

    要查看此示例,您可以查看我的答案HERE

    【讨论】:

    • 谢谢,这让我找到了我需要的东西。我在 CoreWebVFiew2DownloadStartingEventArgs 中找到了 Handled 属性。这让我可以完全删除默认下载通知。我已经在利用 DownloadOperation StateChanged 事件对下载的文件进行一些自定义处理,所以这正好适合。
    猜你喜欢
    • 2022-07-24
    • 2021-08-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-07
    • 2018-01-23
    相关资源
    最近更新 更多