媒体元素的奇怪行为
本文关键字:元素 媒体 | 更新日期: 2023-09-27 18:37:20
我正在制作具有基本功能的媒体播放器,但是当单击暂停播放或停止按钮时,它的行为很奇怪,出现异常"系统.不支持异常" 其他信息:无法控制媒体,除非"加载行为"或"卸载行为"设置为"手动"。
所需的代码和 xaml 如下所示:
XAML:
<MediaElement x:Name="VideoPreview" LoadedBehavior="Manual" UnloadedBehavior="Stop" Width="auto" Height="250" MediaOpened="Element_MediaOpened" MediaEnded="Element_MediaEnded" Source="{Binding SelectedItem.SourceUri, ElementName=VideoList}" Margin="5,5,5,5" Stretch="Fill"/>
代码隐藏:
void OnMouseDownPlayMedia(object sender, MouseButtonEventArgs args)
{
VideoPreview.Play();
}
// Pause the media.
void OnMouseDownPauseMedia(object sender, MouseButtonEventArgs args)
{
VideoPreview.Pause();
}
// Stop the media.
void OnMouseDownStopMedia(object sender, MouseButtonEventArgs args)
{
VideoPreview.Stop();
}
单击任一鼠标事件时,我得到异常。
答案确实在错误文本中...无法控制媒体,除非LoadedBehavior
或UnloadedBehavior
设置为 Manual
。因此,您的解决方案是将 MediaElement.LoadedBehavior
或 MediaElement.UnloadedBehavior
属性设置为值 MediaState.Manual
。
从 MSDN 上的"MediaElement.LoadedBehavior
属性"页:
必须将"加载行为"设置为"手动",才能使用"播放"、"暂停"和"停止"方法以交互方式控制媒体。
你能从MSDN找到的东西真是太神奇了。