C# 不能播放声音

C# 不能播放声音,c#,wpf,C#,Wpf,我制作了一个方法,每次播放一个声音,这个方法叫做: public static void getInformationSound() { Uri uri = new Uri(@"pack://application:,,,/../Resources/Sounds/SF_Info.wav"); StreamResourceInfo sri = Application.GetResourceStream(uri); SoundPlayer simpl

我制作了一个方法,每次播放一个声音,这个方法叫做:

public static void getInformationSound() 
{
        Uri uri = new Uri(@"pack://application:,,,/../Resources/Sounds/SF_Info.wav");
        StreamResourceInfo sri = Application.GetResourceStream(uri);
        SoundPlayer simpleSound = new SoundPlayer(sri.Stream);
        simpleSound.Play();
 }
但是在线上SoundPlayer simpleSound=newsoundplayersri.Stream;我得到这个错误:

对象引用未设置为对象的实例

这是我的文件夹资源:

也许我弄错了URI?项目->资源文件夹->声音文件夹->文件…

尝试以下方法:

MediaPlayer mplayer = new MediaPlayer();
mplayer.Open(new Uri(@"../../Resources/Sounds/SF_Info.wav", UriKind.Relative));
mplayer.Play();

如果你在谷歌上搜索一下,你会发现让声音播放器使用Uri的不同解决方案,但几乎所有地方都有评论说它不起作用

更简单的方法是将声音文件添加到项目的资源中,并使用此资源实例化Soundplayer

将声音文件添加到Resources.resx 打开Resources.resx,选择左上角的音频,然后将声音文件拖放到此处。别忘了在下面的例子中给它起个名字,SF_Info。 实例化您的SoundPlayer: SoundPlayer simpleSound=新建SoundPlayerProperties.Resources.SF_Info;
resource.resx将是100%正确的方式来处理类似的事情。