Windows Phone 8.1:MediaElement在Frame.Navigate

时间:2016-02-28 11:17:15

标签: c# xaml windows-phone-8.1 mediaelement

我开始构建自己的Windows Phone 8.1 App。我实现了一个mp3文件。每当我在XAML的主页上实现它

<MediaElement x:Name="GoalHorn" Source="/Sounds/mySound.mp3" AutoPlay="False" Visibility="Visible"></MediaElement>

我可以在源代码中调用它并通过

启动它
GoalHorn.Play()

我现在想把它放在另一帧上。我用过:

Frame.Navigate(typeof(ScoredPage)), scorerBox.Text);

但是,当我想在新帧上启动声音时,调用

时什么也没做
GoalHorn.Play()

我在新Frame的XAML中也有它。当我将自动播放设置为&#34; true&#34;时,它也适用于帧,但我无法阻止它。

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

当媒体未打开/加载时会发生这种情况,并且在媒体元素上调用.Paly方法。添加MediaOpened事件处理程序并在其中调用play方法。

<MediaElement MediaOpened="GoalHorn_MediaOpened" x:Name="GoalHorn" Source="/Sounds/mySound.mp3" AutoPlay="False" Visibility="Visible"></MediaElement>

事件处理程序

private void GoalHorn_MediaOpened(object sender, RoutedEventArgs e)
{
    GoalHorn.Play();
}