【发布时间】:2023-02-16 21:42:48
【问题描述】:
我正在尝试在我的 C# WinForm 中播放视频。
这是我到目前为止所拥有的:
我的表单中有一个 webViewer 控件,以及以下代码:
// Play YouTube video in webBrowser1
string url = "https://www.youtube.com/watch?v=5aCbWqKl-wU";
string html = "<html><head>";
html += "<meta content='IE=Edge' http-equiv='X-UA-Compatible'/>";
html += "<iframe id='video' src='https://www.youtube.com/embed/{0}' style=\"padding: 0px; width: 100%; height: 100%; border: none; display: block;\" allowfullscreen></iframe>";
html += "</body></html>";
webBrowser1.DocumentText = string.Format(html, url.Split('=')[1]);
这是我运行我的应用程序时的样子:
问题是视频没有填满整个 webViewer(这是图像中的白色部分)。
我将 webViewer1.Anchor 属性设置为全部,因此当我调整表单大小时,webViewer 会根据表单调整大小。
笔记:
当用户单击全屏按钮时,问题就解决了。但这对我来说是一个糟糕的解决方案,因为这对用户来说是一种糟糕的体验。另外,用户可能不知道他们需要点击全屏按钮。这就是它的样子:
如何让视频占据整个 webViewer 而无需用户单击全屏按钮?
此外,作为附带问题,当用户单击“YouTube”按钮时,它会打开 Internet Explorer,而不是默认浏览器。我该如何解决?
【问题讨论】:
-
除了以百分比指定高度,您可以以 px 指定它吗?尝试使用 500px 而不是 100%