我正在使用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]);
}
}
答案 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,它解释了要做什么。