2016-10-05 5 views
0

リソースセクションに約20個の小さなサウンドエフェクトファイルがあります。パラメータIに基づいて特定のサウンドファイルを再生するメソッドを用意したいと思いますそれを渡す...私のサウンドファイルをなどsound01.wav、sound02.wav、上記のコードでパラメータを使用して再生するリソースのサウンドファイルを指定する

public static void PlayMySound(string soundFile) 
{ 
    SoundPlayer snd = new SoundPlayer(Properties.Resources.XXX); 
    snd.Play() 
} 

PlayMySound(sound01); 
PlayMySound(sound02); 
etc. 

命名されていると仮定し、私はXXXは、文字列のサウンドファイル

になりたい私がしようとしていますこれを避けてください。

public static void PlayMySound(string soundFile) 
{ 
    if (soundFile == "sound01") { SoundPlayer snd = new SoundPlayer(Properties.Resources.sound01); } 
    if (soundFile == "sound02") { SoundPlayer snd = new SoundPlayer(Properties.Resources.sound02); } 
    if (soundFile == "sound03") { SoundPlayer snd = new SoundPlayer(Properties.Resources.sound03); } 
    if (soundFile == "sound04") { SoundPlayer snd = new SoundPlayer(Properties.Resources.sound04); } 
    if (soundFile == "sound05") { SoundPlayer snd = new SoundPlayer(Properties.Resources.sound05); } 
    etc.etc.etc. 
} 
+0

あなたの質問は何ですか? – Mostafiz

+0

質問は本質的に「私はXXXを文字列のsoundFileにします」という文の周りを回転しています...しかし、私はそれを理解しました... –

答えて

0

これを投稿した直後に答えが出ました...

public static void PlayMySound(Stream soundFile) 
{ 
    SoundPlayer snd = new SoundPlayer(soundFile); 
    snd.Play(); 
} 

// Then I can just call it like this... 
PlayMySound(Properties.Resources.sound01); 
PlayMySound(Properties.Resources.sound02); 
関連する問題