MediaElement在改变音源后播放声音2次
本文关键字:播放声音 2次 改变 MediaElement | 更新日期: 2023-09-27 18:06:01
我正在使用Windows Phone 8.1应用程序,我遇到了一个无法解决的问题。我在互联网上查找了我能找到的所有代码,我花了几个小时试图找出问题的根源,但没有成功。让我们看一个简单的代码:
xaml:<Page
x:Class="App8.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:App8"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<Grid>
<MediaElement x:Name="MediaElement1" AutoPlay="False" Visibility="Collapsed"/>
<Button Content="Button" HorizontalAlignment="Left" Margin="154,44,0,0" VerticalAlignment="Top"
Click="ButtonBase_OnClick"/>
</Grid>
</Page>
cs: using System;
using System.Diagnostics;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Navigation;
namespace App8
{
public sealed partial class MainPage : Page
{
public MainPage()
{
this.InitializeComponent();
this.NavigationCacheMode = NavigationCacheMode.Disabled;
MediaElement1.MediaOpened += MediaElement1_MediaOpened;
}
void MediaElement1_MediaOpened(object sender, RoutedEventArgs e)
{
MediaElement1.Play();
}
private void ButtonBase_OnClick(object sender, RoutedEventArgs e)
{
MediaElement1.Source = new Uri("ms-appx:///Assets/Audio/SampleSets/First/clap_01.mp3");
}
}
}
现在,当我点击按钮时,声音不时地播放两次。有时是在点击第一次之后,有时是在点击10次之后。我只是想强调,这只是简单的代码,以显示我的问题是什么,我并不想一次又一次地将MediaElement的Source更改为相同的。
当我尝试这个问题似乎发生(有时),而在模拟器上运行。
当我在设备上测试它时,我无法复制相同的行为。