如何使用foreach循环遍历播放列表?

时间:2010-05-20 09:29:20

标签: c# wpf silverlight-3.0

我有以下播放列表:

Playlist playList = new Playlist();

我将playList ietms添加到我的playList中,如下所示:

if (strmediaExtension == "wmv" || strmediaExtension == "mp4" || strmediaExtension == "mp3" || strmediaExtension == "mpg")
                {
                    PlaylistItem playListItem = new PlaylistItem();
                    string thumbSource = folderItems.strAlbumcoverImage;
                    playListItem.MediaSource = new Uri(strmediaURL, UriKind.RelativeOrAbsolute);

                    playListItem.Title = folderItems.strAlbumName;

                    if (!string.IsNullOrEmpty(thumbSource))
                        playListItem.ThumbSource = new Uri(thumbSource, UriKind.RelativeOrAbsolute);

                    playList.Items.Add(playListItem);
                }

现在假设我的plaList里面有9个项目。我想通过使用foreach循环遍历每个循环,如下所示:

foreach (PlaylistItem p in playList)
                    { 
                    //Code Goes here
                    }

但是我得到了错误:

foreach语句无法对“ExpressionMediaPlayer.Playlist”类型的变量进行操作,因为“ExpressionMediaPlayer.Playlist”不包含“GetEnumerator”的公共定义

任何人都可以解释为什么会这样,以及正确的做法是什么。

谢谢, Subhhen

2 个答案:

答案 0 :(得分:5)

可能你必须写:

foreach (PlaylistItem p in playList.Items)
{ 
  //Code Goes here
}

使用foreach的更多细节: http://msdn.microsoft.com/en-us/library/aa288257(VS.71).aspx

答案 1 :(得分:1)

似乎你想要:

foreach(PlaylistItem p in playList.Items)
{
    //code goes here
}