私は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つを2つのmediaElementに分離しようとしました
- mp3をリソース、コンテンツ、埋め込みリソースに設定する
私が知っていること :
- 状態は常に「クローズ」
- XAMLでURIを指定した場合、それは機能します。しかし、私はそれをしたくありません。
- 状態に応じて、すべての機能が正常に動作しています。音楽だけが始まらない。
何かご意見は?