私はこのボタンを私がちょっとしたいことをするようにしようとしてきました。私はそれが私がすることができたことです私はそれを押すと、音を再生したい。しかし、そのようなアプリケーションのようなボタンを押すたびに凍って、その音のすべての注意を与えるなど基本的に私の目標は、UIを停止せずにそれを再生することができるようにすることなく、ボタンの音を再生させることです移動する。また、ボタンを押したときにボタンの再生音を鳴らす方法があるかどうかを知りたいですが、もう一度押すと、現在の音が停止して再び再生され、ボタンをクリックしたクリック数 "X"を再生しないようにします。 。ボタンをクリックしてサウンドを再生し、UIを一時停止し、ボタンをスパムし続けると、連続して再生されますか?
public static void ButtonSound()
{
SoundPlayer _sound = new SoundPlayer();
try
{
_sound.Stop();
_sound.SoundLocation = path + "ButtonTap.wav";
_sound.Load();
_sound.PlaySync();
}
catch
{
}
finally
{
_sound.Dispose();
}
}
、ボタンコード:ここで
が私のコードであるprivate void Button()
{
SoundPlayers.ButtonSound();
}
注、私は別のクラスで私のSoundPlayerのを持っている、と私は私のボタン()メソッドを参照するためにDelegateCommandsを使用しています私も.wavファイルを使用しています。また、達成しようとしている課題を達成するためのより効率的な方法がありますか?必要なものがあれば、尋ねてください。
ありがとうございます!
* "[...]だけSoundPlayerを処理すると停止されます。" *がtrueの場合、実際にPlayメソッドの呼び出しを使用ブロックに入れることはできませんか? (私はtry-finally-disposeの代わりにブロックを使用する方法を示したいと思っていることを知っていますが、答えの文脈では少し間違っているようです...) – elgonzo
私はこれをテストして動作します。私はそれを処分すると音が止まると言うと間違っています。サウンドを止めるものが 'Play()'をもう一度呼び出すようです。ありがとう! –
さて、ボタンを迷惑メールにすると、x回のクリックに対してまったく同じ音が再生されるという事実はどうですか? – Hypergyzed