存储文件
A match
437 8 True
438 8 True
439 8 True
440 8 True
441 8 True
442 8 False
488 2 False
489 2 True
490 2 True
ObservableCollection<StorageFile> files;
打开文件位置。文件位置打开,音频被添加到列表中
public MainPage()
{
this.InitializeComponent();
files = new ObservableCollection<StorageFile>();
_fileList.ItemsSource = files;
this.DataContext = this;
}
从列表视图中选择文件 该文件会播放,但是一旦结束,它就不会播放列表中的下一个文件。我想自动播放列表中的下一个,但是我在为此苦苦挣扎,请帮忙
async private System.Threading.Tasks.Task AddMedia()
{
//Create a new picker
var filePicker = new Windows.Storage.Pickers.FileOpenPicker();
//Add filetype filters.
filePicker.FileTypeFilter.Add(".mp3");
filePicker.FileTypeFilter.Add(".wav");
//Set picker start location to the video library
filePicker.SuggestedStartLocation = PickerLocationId.MusicLibrary;
//Retrieve single file from picker
StorageFile file;
file = await filePicker.PickSingleFileAsync();
if (file != null)
{
files.Add(file);
mediaElement.Play();
}
}
答案 0 :(得分:0)
只需使用两个MediaElement即可实现您的要求。
一种解决方案是使用两个MediaElement。一个MediaElemet总是在播放,第二个是在后台打开并加载下一首曲目,以便在需要时立即开始播放。当一个播放列表项结束时,我们可以立即开始播放下一个。然后刚播放的那个开始排队下一个项目。听起来很简单吧?
使任何播放列表解决方案与MediaElement一起使用的关键是 处理“ MediaEnded”事件。当我们收到此事件时,我们知道 该项目已播放完毕。然后,我们可以检查播放列表并 开始播放下一个项目。幸运的是,与Media Player SDK不同, MediaElement保证我们将始终获得“ MediaEnded” 事件。没有这个播放列表解决方案将是 不可能。
答案 1 :(得分:0)
您应该使用MediaPlaybackList创建音乐播放列表并轻松管理它们,它可以帮助您非常轻松地移至下一个媒体文件或上一个媒体文件,支持无间隙播放,从长远来看,它将使您可以轻松地完全控制播放列表。最好将它与ui控件MediaPlayerElement
一起使用