如何判断WPF MediaElement是否正在播放视频?

5
我正在开发一个基于WPF的应用程序,必须在执行过程中播放一些视频。为了做到这一点,我使用了MediaElement类,然而,在我进行了第一轮测试后,我发现有些视频无法被MediaElement类支持,因为我缺少正确的编解码器。安装了缺失的编解码器后,一切正常运行。
问题在于,我的客户机也可能缺少编解码器,在这种情况下,我想显示某种消息,提示缺少编解码器,以便快速解决此问题,但是当我查看MediaElement类时,我没有找到任何说明给定视频未能播放的属性。实际上,从我所见到的情况来看,MediaElement甚至在尝试播放不正确格式的视频时都不会抛出异常,也没有状态变量表明它是否正在播放视频。
因此,我想知道是否有办法在运行时以编程方式发现MediaElement是否可以播放给定的视频。
1个回答

7

您可以随时订阅MediaFailedMediaOpened事件。这两个事件分别在失败和成功时执行。

如果出现编解码器错误,则会触发MediaElement.MediaFailed

请查看MSDN有关MediaFailed的更多信息


嗨,MediaFailed事件正是我正在寻找的。非常感谢您的帮助。 - Felipe

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接