Windows Phone 7中的媒体播放器

我正在使用Windows Phone 7中的媒体播放器播放手机歌曲集中的音乐。 但是当它播放音乐时,它们将是一个例外而且错误正在陈述

尚未调用FrameworkDispatcher.Update。 定期的FrameworkDispatcher.Update调用是必要的,以便消除和忘记声音效果和框架事件才能正常运行。

我该如何修改我的代码?

private void songBtn_Click(object sender, RoutedEventArgs e) { using (var ml = new MediaLibrary()) { foreach (var song in ml.Songs) { System.Diagnostics.Debug.WriteLine(song.Artist + " " + song.Name); MessageBox.Show(song.Artist + " " + song.Name); } MediaPlayer.Play(ml.Songs[0]); } } 

你必须打电话

 FrameworkDispatcher.Update() 

每当您调用XNA媒体库时,您的代码应该如下所示

 using (var ml = new MediaLibrary()) { foreach (var song in ml.Songs) { System.Diagnostics.Debug.WriteLine(song.Artist + " " + song.Name); MessageBox.Show(song.Artist + " " + song.Name); } FrameworkDispatcher.Update(); MediaPlayer.Play(ml.Songs[0]); } 

由于您在常规Windows Phone 7应用程序中使用XNA Framework,因此出现错误。

如果您阅读了错误说明,您将获得此MSDN链接: 在Windows Phone应用程序中启用XNA Framework事件 ,这可以准确地解释要执行的操作。