在继续执行之前完成播放声音

时间:2015-03-14 03:37:21

标签: c# if-statement soundplayer

我试图在关闭应用程序之前让我的应用程序快速播放.wav,但每次只播放.wav并且不退出应用程序。这是我的代码:

bool condition = false;

if (condition)
{
    SoundPlayer sndPlayer = new SoundPlayer(Project_Rage_v3._1.Properties.Resources.syl);
    sndPlayer.Play();
}
else
{
    Application.Exit();
}

我知道如果bool == true它将执行if函数,如果bool == false它将执行else函数。但如果我不将它们分开,程序就会立即退出而不播放声音。

如何播放声音然后退出,但只在声音播放完毕后退出?

1 个答案:

答案 0 :(得分:1)

删除else块。如果condition为真,您告诉程序播放声音,如果condition为假则退出。按顺序放置命令并调用PlaySync而不是PlayMSDN)。这将阻止其余代码执行,直到播放完成。

bool condition = false;
if (condition)
{
    SoundPlayer sndPlayer = new SoundPlayer(Project_Rage_v3._1.Properties.Resources.syl);
    sndPlayer.PlaySync();
    Application.Exit();
}