Windows Phone 7中的媒体播放器

时间:2011-07-24 16:10:00

标签: c# windows-phone-7 xna

我正在使用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]);
    }
}

2 个答案:

答案 0 :(得分:6)

你必须致电

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]);
}

答案 1 :(得分:2)

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

如果你阅读了错误说明,你会得到这个MSDN链接:Enable XNA Framework Events in Windows Phone Applications,它解释了要做什么。