如何使用foreachLoop迭代播放列表?

Sim*_*ons 2 c# wpf silverlight-3.0

我有以下播放列表:

Playlist playList = new Playlist();
Run Code Online (Sandbox Code Playgroud)

我将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);
                }
Run Code Online (Sandbox Code Playgroud)

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

foreach (PlaylistItem p in playList)
                    { 
                    //Code Goes here
                    }
Run Code Online (Sandbox Code Playgroud)

但我得到了错误:

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

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

谢谢,Subhhen

Ste*_*fan 5

可能你必须写:

foreach (PlaylistItem p in playList.Items)
{ 
  //Code Goes here
}
Run Code Online (Sandbox Code Playgroud)

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