MediaElement不播放源路径中定义的媒体文件
本文关键字:定义 媒体文件 路径 播放 MediaElement | 更新日期: 2023-09-27 18:18:41
我得到一个非常奇怪的错误。在我的XAML中,我有两个MediaElement
标签与2个不同的声音相关联。然而,它却不能正确地播放。
XAML
<MediaElement x:Name="Sound" Source="Sounds/fusrodah.wma" AutoPlay="False" MediaFailed="Sound_MediaFailed" />
<MediaElement x:Name="Sound1" Source="Sounds/yoltorshul.wma" AutoPlay="False" />
<MediaElement x:Name="Sound2" Source="Sounds/iizslennus.wma" AutoPlay="False" />
c# private void shout_Click(object sender, RoutedEventArgs e)
{
this.Sound.Play();
}
根据这里写的代码,它应该播放Sound
(即'Sounds/fusrodah.wma')的媒体,而不是播放Sound2
(Sounds/iizslennus.wma)的声音。
我还观察到,无论最后的MediaElement
标签的来源是什么得到播放(即,如果我添加了Sound3
,它的媒体将得到播放。
页面上只能有一个MediaElement。这就是为什么它只播放最后添加的MediaElement
我有许多MediaElement在我的XAML代码,我没有问题。
XAML
<MediaElement x:Name="musicPlayer"
Source="Assets/sons/rodar2.wav"
AudioCategory="BackgroundCapableMedia" AutoPlay="False"/>
<MediaElement x:Name="musicPlayerFinish"
Source="Assets/sons/success.wav"
AudioCategory="BackgroundCapableMedia" AutoPlay="False"/>
<MediaElement x:Name="musicPlayerNavigation"
Source="Assets/sons/navegar.wav"
AudioCategory="BackgroundCapableMedia" AutoPlay="False"/>
在我的c#代码中
async void PlayMediaNavigation()
{
await Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () =>
{
musicPlayerNavigation.Play();
});
}
private async void Botan_PointerReleased(object sender, PointerRoutedEventArgs e)
{
PlayMediaNavigation();
}