在Windows Phone 7上的每个按钮上设置源并播放单个mp3文件

本文关键字:播放 单个 文件 mp3 设置 Phone Windows 按钮 | 更新日期: 2023-09-27 18:35:48

我正在尝试为Schoool制作Windows Phone 7.1的应用程序。我想为我的应用程序上的每个按下按钮播放声音(就像安卓的 istantfun 按钮一样),但我有一些问题。如果我在我的 xaml 上声明所有 120 个媒体元素,我的应用程序将只随机播放 3/4 个声音。我想做这样的东西:

private void button1_Click(object sender, RoutedEventArgs e)
    {
        prova.Source = new Uri("/mp3/call.mp3", UriKind.Relative);
        prova.Play();
    }

其中 prova 是在 xaml 文件的第一页上声明的单个媒体元素。我该怎么办?谢谢建议

在Windows Phone 7上的每个按钮上设置源并播放单个mp3文件

首先,如果您想在多页应用程序中播放声音,那么媒体元素不是好的解决方案。除了它的局限性(一次只有一个声音)之外,在考虑了声音效果的数量之后,也许你应该尝试使用XNA,如下所述:http://www.dotnetscraps.com/dotnetscraps/post/Play-multiple-sound-files-in-Silverlight-for-Windows-Phone-7.aspx

public void PlaySound(string soundFile)
{
    using (var stream = TitleContainer.OpenStream(soundFile))
    {
        var effect = SoundEffect.FromStream(stream);
        FrameworkDispatcher.Update();
        effect.Play();
    }
}

使用此解决方案,你不需要任何 XAML 元素,因此可以在应用范围内播放它。