MediaElement не воспроизводит медиа-файл, указанный в исходном пути? - PullRequest
0 голосов
/ 25 декабря 2011

Я получаю очень странную ошибку. В моем XAML у меня есть два тега MediaElement, связанные с двумя разными звуками. Однако я не играю правильно.

XAML

<MediaElement x:Name="Sound" Source="Sounds/fusrodah.wma" AutoPlay="False" MediaFailed="Sound_MediaFailed" />
<MediaElement x:Name="Sound1" Source="Sounds/yoltorshul.wma" AutoPlay="False" />
<MediaElement x:Name="Sound2" Source="Sounds/iizslennus.wma" AutoPlay="False" />

C #

private void shout_Click(object sender, RoutedEventArgs e)
        {

            this.Sound.Play();

        }

По написанному здесь коду он должен воспроизводить мультимедиа для Sound (т. Е. 'Sounds / fusrodah.wma'), вместо этого он воспроизводит звук для Sound2 (Sounds / iizslennus.wma).

Также я заметил, что независимо от того, что воспроизводится последним тегом MediaElement (то есть, если я добавлю Sound3, это будет носитель для того, что будет воспроизведено.

Я не понимаю, это очень странная ошибка. Я слушал треки несколько раз, чтобы не перепутать их. Я проверил их пути несколько раз. У кого-нибудь есть идеи, почему он не воспроизводит то, что указано для воспроизведения?

Ответы [ 2 ]

2 голосов
/ 25 декабря 2011

На странице может быть только один MediaElement. Вот почему он воспроизводит только последний добавленный MediaElement.

0 голосов
/ 26 октября 2014

В моем коде XAML много MediaElement, и у меня нет проблем.

XAML

            <MediaElement x:Name="musicPlayer" 
      Source="Assets/sons/rodar2.wav"
      AudioCategory="BackgroundCapableMedia" AutoPlay="False"/>
            <MediaElement x:Name="musicPlayerFinish" 
      Source="Assets/sons/success.wav"
      AudioCategory="BackgroundCapableMedia" AutoPlay="False"/>
            <MediaElement x:Name="musicPlayerNavigation" 
      Source="Assets/sons/navegar.wav"
      AudioCategory="BackgroundCapableMedia" AutoPlay="False"/>

В моем коде C #

    async void PlayMediaNavigation()
    {
        await Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () =>
        {
            musicPlayerNavigation.Play();
        });
    }




    private async void Botan_PointerReleased(object sender, PointerRoutedEventArgs e)
    {
        PlayMediaNavigation();
    }
...