WP:MediaElement永远不会播放

时间:2012-12-21 07:06:12

标签: c# silverlight windows-phone-7

我有这个应用程序与C#代码,但MP3没有播放。

 music = new MediaElement();

 music.AutoPlay = false;
 music.Source = new Uri("/music/musicNormal.mp3", UriKind.Absolute);
 music.CurrentStateChanged += new RoutedEventHandler(music_CurrentStateChanged);
 music.MediaOpened += new RoutedEventHandler(music_MediaOpened);

对于currentStateChanged事件,我给出了一个MessageBox,但它从未触发过。 对于MediaOpened事件,我提供了一行music.Play(),但它也从未触发

我有这些功能

private void changeMusic(bool normal)
    {
        music.Stop();
        if (normal)
            music.Source = new Uri("/music/musicNormal.mp3", UriKind.Absolute);
        else
            music.Source = new Uri("/music/musicFast.mp3", UriKind.Absolute);
    }

private void playMusic()
    {
        if (timeBar.Value <= 10 && music1)
        {
            timeNumber.Foreground = new SolidColorBrush(Colors.Red);
            changeMusic(false);
            music2 = true;
            music1 = false;
        }
        else if (timeBar.Value > 10 && music2)
        {
            timeNumber.Foreground = new SolidColorBrush(Colors.White);
            changeMusic(true);
            music1 = true;
            music2 = false;
        }
        if (musicEnabled) music.Play();
    }

我试过了:

  • 通过MediaFailed事件进行跟踪,但它永远不会失败
  • 将UriKind更改为Relative和RelativeOrAbsolute
  • 在URI的开头提供/删除斜杠
  • 试图将这两者分成2个mediaElement
  • 将mp3设置为资源,内容,嵌入资源

我所知道的:

  • 州总是“封闭”
  • 如果我在XAML中指定了URI,它就可以了。但我不想这样做。
  • 所有功能均根据条件正常运行。只是音乐不会开始。

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

找到答案!我不能深入搜索SOF:stackoverflow.com/questions/7018335 / ...在我们可以修改Code中的MediaElement之前,我们需要首先在XAML中将其可视化。