user-interface - UWP MediaElement 未关闭
问题描述
我在我的 xaml 中添加了一个 MediaElement。单击时,它会显示带有图像和播放的播放器屏幕。我希望它在播放后关闭并删除。我试过 Close() 没有效果。
private async void MovieItemAsync(object sender, Windows.UI.Xaml.RoutedEventArgs e)
{
mediaMainPage.Source = new Uri("ms-appx:///Videos/EMRON_Overview1.wmv", UriKind.Absolute);
mediaMainPage.Play();
//mediaMainPage.Stop();
//mediaMainPage.Source = null;
}
这是我的xml:
<StackPanel Grid.Column="2" Grid.ColumnSpan="4" Grid.Row="0" Grid.RowSpan="4">
<MediaElement x:Name="mediaMainPage" AutoPlay="True"/>
</StackPanel>
和:
<Page.TopAppBar>
<CommandBar>
<AppBarButton x:Name="HelpItemBtn" Label="Help" Icon="Help" Click="HelpItemAsync" />
<AppBarButton x:Name="MovieItemBtn" Label="Tutorial" Icon="Camera" Click="MovieItemAsync" />
</CommandBar>
</Page.TopAppBar>
解决方案
我希望它在播放后关闭并删除。我试过 Close() 没有效果。
将Source
属性设置为 null 确实有效。如果要在视频播放到最后时删除 MediaElement 中的图像,可以Source
在其 MediaEnded 事件处理程序中将该属性设置为 null。
<MediaElement x:Name="mediaMainPage" MediaEnded="mediaMainPage_MediaEnded" AutoPlay="True"/>
private void mediaMainPage_MediaEnded(object sender, RoutedEventArgs e)
{
mediaMainPage.Source = null;
}
推荐阅读
- python - 即使满足包要求,也解决anaconda enviroment.yml中的ResolvePackageNotFound错误?
- python - XML/KML 格式不正确
- python - 如何将终端输出显示到 PyQt 中的文本框
- http - 从 net/http.Request.RemoteAddr 获取 IP 地址的最简洁方法是什么
- solr - solrj 是否支持使用 _nest_path_ 字段索引嵌套文档?
- citations - 将引文标签更改为每位作者仅包含一到两个字母
- rust - 如何在线程中借值而不是移动
- opencv - Visual Studio 2017 自动链接依赖的依赖
- tfs - 是否可以在 TFS 关闭时编辑代码
- python - 如何在 Google Colab 中进行文本到语音的转换?