首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >windows phone 7中的媒体播放器显示下一首歌曲

windows phone 7中的媒体播放器显示下一首歌曲
EN

Stack Overflow用户
提问于 2011-08-02 11:53:44
回答 1查看 1.2K关注 0票数 0

我想做一些类似于windows phone7中的媒体播放器的事情,在那里会显示下几首歌曲。我会采取什么方法来实现这一点?

示例:上一首歌上一首歌当前歌下一首歌下一首歌

我的代码目前是这样的:

代码语言:javascript
复制
        void MainPage_Loaded(object sender, RoutedEventArgs e)         
    {         
        List<string> songlist = new List<string>();         
        MediaLibrary library = new MediaLibrary();         
        mySongCollection = library.Songs;         
        MediaPlayer.ActiveSongChanged += new EventHandler<EventArgs>(MediaPlayer_ActiveSongChanged);         
        MediaPlayer.MediaStateChanged += new EventHandler<EventArgs>(MediaPlayer_MediaStateChanged);         

        UpdateCurrentSongInformation();         
    }         

    void UpdateCurrentSongInformation()         
    {         
        try         
        {
            MediaLibrary lb = new MediaLibrary();
            int i = MediaPlayer.Queue.ActiveSongIndex;

           textBlock1.Text= lb.Songs.ToString();

            txtAlbumName.Text = MediaPlayer.Queue.ActiveSong.Album.Name;         
            txtArtistName.Text = MediaPlayer.Queue.ActiveSong.Artist.Name;         
            txtSongName.Text = MediaPlayer.Queue.ActiveSong.Name;
            progressBar1.Maximum = MediaPlayer.Queue.ActiveSong.Duration.Minutes*60+MediaPlayer.Queue.ActiveSong.Duration.Seconds;
            double max = MediaPlayer.Queue.ActiveSong.Duration.Milliseconds;


            BitmapImage bmp = new BitmapImage();         
            bmp.SetSource(MediaPlayer.Queue.ActiveSong.Album.GetAlbumArt());

            imgAlbumCover.Source = bmp;         
        }         
        catch         
        {         
            imgAlbumCover.Source = null;         
        }         
    }

就像Dennis建议的那样,我这样编写代码:

代码语言:javascript
复制
            MediaLibrary lb = new MediaLibrary();
            int i = MediaPlayer.Queue.ActiveSongIndex;
            NextSong.Text = lb.Songs[i+1].Name;
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-08-02 12:32:40

由于您有MediaPlayer.Queue.ActiveSongIndex,因此您还可以通过MediaPlayer.Queue[n]访问队列中的现有项,其中n是歌曲索引。您将获得一个具有相同元数据的Song实例。只要您有当前的索引,您就可以将其递减1以检查前一首歌曲,并将其递增1以检查下一首歌曲。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6907081

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档