1

我的 windows phone (8) 应用程序中的 MediaElement 有问题。在我导航到其他页面并返回包含 MediaElement 的页面之前,它工作正常。

我有以下代码来播放来自必应翻译 API 的流:

private void TranslationService_SpeakComplete(object sender, SpeakCompleteEventArgs e)
    {
        var stream = e.Stream;

        Deployment.Current.Dispatcher.BeginInvoke(() =>
        {
            try
            {
                MediaElement.Stop();
                MediaElement.Source = null;

                string filename = "FlipNLearnItAudio";
                using (var isf = IsolatedStorageFile.GetUserStoreForApplication())
                {
                    bool fileExists = isf.FileExists(filename);

                    if (fileExists)
                    {
                        isf.DeleteFile(filename);
                    }

                    var isfs = isf.CreateFile(filename);
                    using (isfs)
                    {
                        Helpers.SaveFile(stream, isfs);
                        isfs.Position = 0;

                        MediaElement.AutoPlay = true;
                        MediaElement.SetSource(isfs);
                    }
                }
            }
            catch (Exception ex)
            {
                //TODO: log exception
            }
        });
    }

最大的问题是没有例外......“MediaElement.SetSource(isfs);” 正常调用,无一例外!

你知道会发生什么吗?

谢谢你的帮助!巴斯蒂安

4

1 回答 1

0

好的,我找到了解决我的问题的方法。我将 MediaElement 放在 App.xaml 资源中,现在它工作正常......

但它没有解释为什么它不能与 MainPage.xaml 中的 MediaElement 一起使用。

如果有人有答案,我很想听听;-)。

于 2013-09-11T19:21:31.037 回答