加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 如何在WP7 BGM中循环播放音乐?

发布时间:2020-12-15 17:17:01 所属栏目:百科 来源:网络整理
导读:private void button1_Click(object sender,RoutedEventArgs e){ MediaElement Lala = ((MediaElement)App.Current.Resources["backgroundMusic"]).Stop(); if (Lala == true) { ((MediaElement)App.Current.Resources["backgroundMusic"]).Play(); } 为什么
private void button1_Click(object sender,RoutedEventArgs e)
{
    MediaElement Lala = 
        ((MediaElement)App.Current.Resources["backgroundMusic"]).Stop();

    if (Lala == true)
    {
        ((MediaElement)App.Current.Resources["backgroundMusic"]).Play();
    }

为什么不循环?

或者还有其他方法来制作我的BGM循环吗?

这是我在App.xaml中写的它可以工作,但不知道如何循环它:

<Application.Resources>
    <MediaElement x:Name="backgroundMusic" Source="Nyan.mp3" AutoPlay="True" Volume="1" />
</Application.Resources>

解决方法

既然没有完全回答 –

你正在寻找MediaElement在它停止循环时循环自己.你的代码没有这样做.相反,您的代码是1)单击按钮时停止音乐.下一行代码:if(Lala == true)是媒体元素上的bool.

即使您完全使用XAML代码,自动循环的简单方法是插入MediaEnded =“”代码.通过此操作,您可以创建一个事件处理程序来指定媒体结束时要执行的操作.因此,在您的示例中,您的XAML将如下所示:

<MediaElement x:Name="backgroundMusic" Source="Nyan.mp3" AutoPlay="True" Volume="1" MediaEnded="DoThisWhenMediaEnds" />

你的c#看起来像这样:

private void DoThisWhenMediaEnds(object sender,RoutedEventArgs e)
 {
    //what to do when the media has ended. In this case:
    backgroundMusic.Play();
 }

你去!你将拥有你可以管理的所有Nyan善良.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读