ok, adesso è un pò più chiaro... io comunque trovo che sarebbe stato più appropriato l'uso di wpf, sai per le animazioni... comunque tornando altuo problema :
passa una lista di percorsi wav e li esegui uno dietro l'altro in modo asincrono su thread separato.
esempio :
void PlayWav(object objPercorsiWav)
{
string[] PercorsiWav = objPercorsiWav as string[];
SoundPlayer simpleSound = new SoundPlayer();
foreach (string percorso in PercorsiWav)
{
simpleSound.SoundLocation = percorso;
simpleSound.PlaySync();
}
}
void PlayWavAsync(string[] PercorsiWav)
{
Thread t = new Thread(PlayWav);
t.Start(PercorsiWav);
}
in questo caso basta che usi PlayWavAsync(new string[] { @"C:\Windows\Media\chimes.wav", @"C:\Windows\Media\chimes.wav"}); e vedrai che funziona! se invece usi direttamente PlayWav(new string[] { @"C:\Windows\Media\chimes.wav", @"C:\Windows\Media\chimes.wav"}); allora si blocca l'esecuzione del thread principale (gif bloccata)
ciao.