【问题标题】:VS2019 WinForm app with webbrowser controlVS2019 WinForm 应用,带浏览器控件
【发布时间】:2021-09-30 15:21:26
【问题描述】:

我有一个 VS2019 WinForm 应用程序,其表单包含一个 webbrowser 控件。 webbrowser 控件的 URL 指向我的 asp.net 网站上的一个表单,HelpForm.aspx。 HelpForm.aspx 的 URL 具有 args,aspx 页面可以在代码文件中使用这些 args 进行数据库调用,并使用提供的 args 从 SQL Server 数据库中获取 text/html,然后将该 text/html 作为文本应用到.aspx 页面。然后该 aspx 页面返回到我的 winForm 上的 webbrowser 控件。这一切都很好。这允许我使用相同的表单从数据库中检索不同的帮助数据。

作为存储在数据库中的 text/html 的一部分,一些记录包含嵌入 YouTube 视频的代码。以下是数据库中内容的示例:

'... 如果在组合框具有焦点时使用鼠标滚轮,情况也是如此。

<object width="560" height="315"><param name="movie" value="https://www.youtube.com/embed/fpXX8mSuDV4"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="https://www.youtube.com/embed/fpXX8mSuDV4" width="560" height="315"></embed></object>

注意:有一个....'



在某些机器上,这可以工作,并且视频与文本内嵌显示,但在其他机器上,我得到一个黑框或左上角带有小图标的白框。

这似乎与 IE/Edge 有关,但我找不到任何有用的东西来帮助解决这个问题。

有什么想法吗??谢谢

【问题讨论】:

    标签: html winforms winforms-to-web


    【解决方案1】:

    WebBrowser 控件是 stuck in IE7 mode by default,除非您在运行应用程序的每台计算机上编辑注册表。

    但即使您可以编辑注册表,您仍将使用 Internet Explorer。早在 2020 年 3 月,YouTube 就放弃了对 Internet Explorer 的所有支持。

    不幸的是,您将需要更新您的应用程序以使用更现代的浏览器控件。例如,CefSharpWebView2 应该可以工作。

    【讨论】:

    • 我尝试了 CefSharp,页面正常运行,但播放视频导致 YouTube 报告浏览器无法播放视频。
    • 我已经实现了 WebView2。我将我的应用程序安装到用户机器上。它不适用于用户计算机。表单窗口打开,但从不显示 Web 数据。它在我的开发机器上运行良好。是否有运行时或需要在用户计算机上安装的东西?
    • 是的,您需要下载并安装WebView2 runtime
    猜你喜欢
    • 2018-03-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多