c#怎么实现随机播放音乐

解决方案 »

  1.   

    提供一下思路读取音乐文件到一个  List<string> musicList
    每次播放之前都产生一个 0~musicList.Count-1的随机数i
    然后根据此随机数找到musicList[i]所对应的音乐文件路径
    播放
      

  2.   

    UP楼上的,我也有个想法:用js产生随机数,然后js向object传送url参数,完全JS就可以实现的功能。
      

  3.   

    我也有点小小想法
    //产生一个随机数
    int m=ran.Next() % this.listbox1.Items.Count;
    //然后就指定URL
    this.windowsmedioplayer.url=this.listbox1.Items[m].ToString();
    //当然绑定的控件可以是别的像ListView啊这些
      

  4.   

    一首歌播放完后,让程序在随机播放listBox里面的歌,问题是怎么获得这种状态,即怎样判断这首歌是否播放完了.我是个菜鸟.这里有些代码,但是实现不了效果,不知道是为什么.
    private void RandomPlay()
            {
                if(this.axWMP.playState==WMPLib.WMPPlayState.wmppsReady)
                 //或者this.axWMP.playState==WMPLib.WMPPlayState.wmppsStop
                {
                    Random randomNumber = new Random();
                    int number = randomNumber.Next(0, listBox1.Items.Count - 1);
                    XmlNode root = xmlDoc.SelectSingleNode("root");
                    string url = "";
                    foreach (XmlElement x in root.ChildNodes)
                    {
                        if (x.GetAttribute("ID") == number.ToString())
                        {
                            url = x.GetAttribute("filePath");
                        }
                    }
                    axWMP.URL = url;
                    axWMP.Ctlcontrols.play();
                    listBox1.SetSelected(number, true);
                 }
            }
    前提说明,我刚学c#,代码不太规范,希望大家不要见笑啊