我正在通过构建 WMP 类型的应用程序来学习 C# 和 WPF。下面的代码运行良好,从列表框中选择一部电影在媒体元素中运行它。我遇到的问题是找到一种方法在电影结束后自动开始下一部电影。谢谢。
提供电影列表的 xml 文件:
<?xml version="1.0" encoding="ISO-8859-1"?>
熊
c:\电影\Bear.wmv
蝴蝶
c:\电影\蝴蝶.wmv
湖
c:\电影\湖.wmv
xaml
<Window x:Class="WpfAppPlaylistTest.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1" Height="300" Width="425">
<Window.Resources>
<XmlDataProvider x:Key="myMoviesXML"
Source="c:\Movies\media1.xml"
XPath="media"
/>
</Window.Resources>
<Grid DataContext="{Binding ElementName=movieList, Path=SelectedItem}">
<ListBox ItemsSource="{Binding Source={StaticResource myMoviesXML}, XPath=//media//movie}" IsSynchronizedWithCurrentItem="True"
Name="movieList" HorizontalAlignment="Right" Width="114" Margin="0,48,12,32">
<ListBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding XPath=title}"/>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
<MediaElement Source="{Binding XPath=filename}" LoadedBehavior="Play" Name="mediaElement1" Margin="12,26,136,12" />
</Grid>
MediaElement 有一个 MediaEnded 事件,发生这种情况时应该触发该事件。然后,您可以通过编程选择列表中的下一个项目,并播放该文件。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)