如何防止WPF MediaKit MediaClosed被解雇

时间:2018-04-25 15:00:20

标签: c# wpf wpf-mediakit

我有一个WPF窗口,里面有一个ContentPresenter,两个用户控件(一个主机MediaUriElement,另一个托管其他东西)和两个按钮(用户控件之间切换)。

当我切换到MediaUriElement用户控制时,我为其分配视频Uri,并且视频播放得非常好,然后我切换到另一个用户控件,此时MediaClosed事件当我切换回来时,视频无法播放。

我希望视频可以从头开始播放或者在最后一次切换时继续播放,我该怎么办?

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

MediaElementBase(和后代)挂钩Unloaded事件并关闭媒体。未封闭的媒体仍然拥有一些资源。

您可以通过MediaElementBase.UnloadedBehavior属性更改此行为。除了MediaState.Close之外的其他设置。但要小心:你必须自己调用Close(),否则你的应用程序可能会出现内存泄漏。