我有用C#编写的WPF应用程序。此应用程序有两个彼此相邻的WPF WebBrowser控件。每个人导航到不同的本地托管的HTML文件。每个HTML文件都有一个视频元素,它指向存储在同一目录中的.mp4视频文件。WPF WebBrowser控件不会在本地托管的HTML页面中加载视频
我的问题是,视频内容不在WebBrowser控件中呈现。如果我使用完全相同的URL并将其放入同一台PC上的Internet Explorer 11,则视频内容运行得非常好。我知道WebBrowser控件的实际导航正在工作,因为页面呈现一半。我可以看到正确的背景颜色显示,但就是这样。如果我在其中一个控件中右键单击并查看源代码,我可以在那里看到正确的HTML。
试图将此建议应用于对此Internet Explorer 11的此question的答案,我尝试使用此link中的信息使我的可执行文件中的WebBrowser控件运行得像IE11一样没有成功。
我不确定这是否相关,但我已在Internet Explorer的Internet选项中选中“允许活动内容在我的电脑上运行”。
下面是视频的HTML标记:
<div id="video_holder">
<video id="video" width="1200" height="900" autoplay>
<source src=".\FANCY.mp4" type="video/mp4">
</video>
</div>
这里是调用web浏览器控件的Navigate()方法(构造这种形式的代码从另一个类接收网址 - 我敢肯定的问题不在这里,不过,因为我可以看到实际的导航似乎是工作和HTML开始渲染):
public partial class TwoPaneWindow : Window
{
private string leftUrl;
private string rightUrl;
public TwoPaneWindow(string left, string right)
{
leftUrl = left;
rightUrl = right;
}
public void StartWindow()
{
InitializeComponent();
this.Show();
LeftBrowser.Navigate(leftUrl);
RightBrowser.Navigate(rightUrl);
}
}
谁能告诉到底是怎么回事?我在Windows 8.1上安装了IIS。预先感谢您提供的任何帮助。