зацикливание звука в windows phone 7

Я пытаюсь заставить звук зацикливаться при нажатии кнопки, а затем останавливать звук при повторном нажатии той же кнопки. У меня есть несколько звуков, которые воспроизводятся одновременно (все зацикливаются), все звуки должны запускаться и останавливаться в любом порядке.

Моя проблема?

Если вы нажмете одну кнопку, то звук зациклится нормально, и он остановится при повторном нажатии кнопки, однако, если вы нажмете одну кнопку (чтобы один звук зацикливался), а затем нажмите другую (чтобы попытаться воспроизвести оба звука одновременно) затем первый звук прекращается, и я не могу понять, почему?

Мой код:

    private void button3_Click(object sender, RoutedEventArgs e)
    {


        SoundEffect sound3;
        int x = 0;

        StreamResourceInfo SoundFileInfo = App.GetResourceStream(new Uri("tracks/drum (human).wav", UriKind.Relative));

        sound3 = SoundEffect.FromStream(SoundFileInfo.Stream);

        SoundEffectInstance sound3instance = sound3.CreateInstance();


        if (button3.Content.Equals("Sound 3"))
        {
            sound3instance.IsLooped = true;
            sound3instance.Play();
            button3.Content = "Playing";
        }
        else
        {
            sound3instance.Pause();
            button3.Content = "Sound 3";
        }

    }

    private void button4_Click(object sender, RoutedEventArgs e)
    {
        SoundEffect sound4;

        StreamResourceInfo SoundFileInfo2 = App.GetResourceStream(new Uri("Cow Moo 1.wav", UriKind.Relative));

        sound4 = SoundEffect.FromStream(SoundFileInfo2.Stream);

        SoundEffectInstance sound4instance = sound4.CreateInstance();


        if (button4.Content.Equals("Sound 4"))
        {
            sound4instance.IsLooped = true;
            sound4instance.Play();
            button4.Content = "PLaying";
        }
        else
        {
            sound4instance.Pause();
            button4.Content = "Sound 4";
        }
    }

Огромное спасибо,

Джейк


person SomeGuy    schedule 03.06.2012    source источник


Ответы (1)


хранятся ли экземпляры sound3instance и sound4instance вне методов?

person Community    schedule 03.06.2012
comment
Но я могу заставить звуки зацикливаться друг на друге, но только если я удалю, если это проверяет содержимое кнопки (также проверьте, должен ли звук воспроизводиться или останавливаться)? - person SomeGuy; 03.06.2012
comment
нет, они создаются в методе и только потом... сейчас попробую перенести - person SomeGuy; 03.06.2012
comment
спасибо теперь работает!!! (теперь я смотрю на это глупая ошибка, но я бы никогда не заметил ее) - person SomeGuy; 03.06.2012