0

学校向けの Windows Phone 7.1 用のアプリケーションを作成しようとしています。アプリケーションで押されたボタンごとにサウンドを再生したい (Android の 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 ファイルの最初のページで宣言された単一の MediaElement です。どのようにできるのか?ありがとうアドバイス

4

1 に答える 1

1

まず第一に、メディア要素よりも複数ページのアプリでサウンドを再生したい場合は、良い解決策ではありません。その制限 (一度に 1 つのサウンド) に加えて、サウンド エフェクトの量を考慮した後、ここで説明されているように XNA を使用してみてください。 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 要素は必要ないため、アプリ全体で再生できます。

于 2012-07-17T10:00:41.197 に答える