我在MainWindow中有一个页面转换控件(几个按钮和一个通向主页的主页按钮),所以我点击MainWindow上的一个按钮,在MainWindow内的页面转换中带来一个用户控制页面,theres要在该用户控制页面中播放的音频,确定没问题,但是当我单击主页按钮显示主页时,该用户控制页面的音频仍在播放。如何阻止用户控制页面在后台运行?
这就是我将用户控制页面调用到主窗口中的页面转换控件的方式:
private void button2_Click(object sender, RoutedEventArgs e) // Story
{
Story page = new Story();
pageTransition1.IsEnabled = true;
pageTransition1.Visibility = System.Windows.Visibility.Visible;
grid1.Visibility = System.Windows.Visibility.Hidden;
pageTransition1.ShowPage(page);
}
private void button5_Click(object sender, RoutedEventArgs e) // Home Button
{
pageTransition1.Visibility = System.Windows.Visibility.Hidden;
pageTransition1.IsEnabled = false;
grid1.Visibility = System.Windows.Visibility.Visible;
}
基本上我只想让用户控制页面停止运行(因为它在后台运行)当我点击主页按钮时。
我如何在用户控制页面中播放声音::
mediaElement1.LoadedBehavior = MediaState.Manual;
mediaElement1.Source = new Uri(audioNames[iCurrentImageCount], UriKind.RelativeOrAbsolute);
mediaElement1.Play();
和
MediaPlayer ap = new MediaPlayer();
recordedaudio = System.IO.Directory.GetFiles(@"../../Audio/", "*.wav");
if (recordedaudio == null)
{ MessageBox.Show("No Recorded Files!"); }
else
{
ap.Open(new Uri(recordedaudio[iCurrentImageCount], UriKind.RelativeOrAbsolute));
ap.Play();
}
答案 0 :(得分:0)
一种解决方案是在用户控制页面中处理Unloaded事件并停止播放媒体。