0

ボタンを使用して別のページに移動するアプリケーションを作成しています。ユーザーがボタンに触れたときに音を出したいです。ボタンのみの場合は正常に動作しますが、ボタンを使用して別のページに移動すると、サウンドは再生されませんでしたが、Windows phone の [戻る] ボタンを押すと再生されます。

public void playSound()
{
    MediaElement playSound1 = new MediaElement();
    playSound1.Source = new Uri("/Sound/Lionsound.mp3", UriKind.Relative);
    playSound1.Play();
}

void btnClassicPuzzle_Click(object sender, System.Windows.RoutedEventArgs e)
{
    playSound();
    NavigationService.Navigate(new Uri("/Menu/SelectPack.xaml", UriKind.Relative));
}
4

2 に答える 2

0

ボタンのクリック時にサウンドを再生する関数を呼び出し、すぐにページのナビゲーションを実行しています。コンパイラの処理方法は の後playSound1.Play()で、サウンドが開始され、すぐに が呼び出されますNavigationService。ページが変更され、現在のページ内のすべてのオブジェクトが破棄されるため、サウンドが停止します。あなたがしなければならないことは、MediaEndedイベントの次のページに移動して、ナビゲーションの前に完全なサウンドを再生できるようにすることです

<MediaElement MediaEnded="eventhandler" ../>

参照された

;MediaPlayerを使用して状態を確認することもできます。MediaPlayer.Stateナビゲーション前

于 2013-10-04T11:12:09.680 に答える