我在 WPF 应用程序中遇到 MediaPlayer 类的问题。
我的项目是这样的:
问题是:当我的 AboutDialog 被初始化并出现时,它不播放 AboutDialogSound.mp3。我认为问题是 Uri 字符串格式,我尝试更改它但我仍然没有工作。
对不起,我英语不好。请帮我解决这个问题。提前致谢。
最佳答案
至少,您的代码中有两个问题,关于您如何尝试使用 MediaPlayer
播放 mp3 文件。 :
bin\debug
里面文件夹。所以mp3文件的路径应该是"../../AboutDialogSound.mp3"
. MediaPlayer
对象作为局部变量。通过这样做,对象将在声明变量的方法(在本例中为 AboutDialog
构造函数)完成后不久被垃圾回收。所以如果你设法解决了第一个问题,你会听到音频文件播放了一会儿,然后突然停止,因为 MediaPlayer
播放它 GC ed。将其声明为全局变量而不是本地变量。 提示:检查
MediaPlayer
中的失败(如路径错误找不到文件),尝试订阅MediaFailed
事件。因为 MediaPlayer
不抛出异常,触发 MediaFailed
事件代替。public partial class AboutDialog
{
private MediaPlayer player;
public AboutDialog()
{
player = new MediaPlayer();
player.MediaFailed += (o, args) =>
{
MessageBox.Show("Media Failed!!");
};
player.Open(new Uri("../../AboutDialogSound.mp3", UriKind.RelativeOrAbsolute));
player.Play();
}
.....
}
引用:http://www.wpf-tutorial.com/audio-video/playing-audio/
关于wpf - 媒体播放器 mp3 不工作 wpf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21507335/