В моем приложении у меня есть один MediaElement на страницу. При навигации по этой странице я воспроизвожу голосовое сообщение.WindowsPhone MediaElement
protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
{
base.OnNavigatedTo(e);
mediaElement.Stop();
smediaElement.Source = new Uri("res/sounds/" + soundName, UriKind.RelativeOrAbsolute);
}
Я зарегистрировал lsitener MediaOpened для MediaElement:
private void me_MediaOpened(object sender, RoutedEventArgs e)
{
MediaElement m = (MediaElement)sender;
m.Play();
}
Но звук воспроизводится только на любой другой страницы.
Так выглядит: Page1 (звук) -> Page2 (нет звука) -> Page3 (звук) -> Page4 (не звук).
Я пробовал все, и я не могу понять, что может вызвать такое поведение. Возможно, это не важно, но я просматриваю экземпляры одного и того же подкласса PhoneApplicationPage.
Любые идеи?
P
Вы пытались обработать событие MediaFailed, чтобы узнать, есть ли исключение? Открывается ли открытое событие на страницах, где звук не воспроизводится? –
Хорошая точка. Я попробую Media Failed. Открытое событие не вызывается на страницах, где звук не воспроизводится. –
Это тот же звук, который играет каждая страница? Воспроизводит ли это звук до перехода на следующую страницу? Вы останавливаете звук в текущий разыгрыш при навигации со страницы? –