如何从WPF中的资源获取mp3文件

时间:2014-11-02 09:30:36

标签: c# wpf

我想从default.mp3获取resources的URI并在System.Windows.Media.MediaPlayer中播放该文件 我将mp3文件作为Contentcopy always包含在资源文件夹中,但我不知道如何播放获取URI。我目前正在这样做,但它无法正常工作

 uri = new Uri("pack://application:,,,/Resources/default1.mp3");   // This is not working neither showing and error
 var player = new MediaPlayer();
 //MessageBox.Show(uri.ToString());
 player.Open(uri);
 player.Play();

2 个答案:

答案 0 :(得分:1)

您无法将资源中的文件应用于.Net中的MediaPlayer。音乐文件应放在单独的文件中,并使用物理文件路径创建Uri。

请参阅MediaPlayer.MediaError事件中的消息详细信息。

答案 1 :(得分:0)

您必须将“构建操作”设置为“资源”才能通过WPF访问资源。

您可以在文件的属性窗格中更改此内容:

enter image description here

我得到了以下步骤:

  1. Resources\default.mp3;
  2. 中创建资源文件
  3. 将资源文件添加到项目中。将Build Action设置为Resource;
  4. 使用此代码:

    Uri uri = new Uri("pack://application:,,,/WpfApplication1;component/Resources/default.mp3");