Как перебрать плейлист с помощью foreachLoop? - PullRequest
2 голосов
/ 20 мая 2010

У меня следующий плейлист:

Playlist playList = new Playlist();

Я добавляю плейлист ietms в свой плейлист, как показано ниже:

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);
                }

Теперь предположим, что в моем плакате 9 элементов. Я хочу перебрать каждый из них, используя цикл foreach следующим образом:

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

Но я получаю ошибку:

оператор foreach не может работать с переменными типа ExpressionMediaPlayer.Playlist, поскольку ExpressionMediaPlayer.Playlist не содержит общедоступного определения для GetEnumerator

Может ли кто-нибудь объяснить, почему это происходит и как это правильно сделать.

Спасибо, Subhhen

Ответы [ 2 ]

5 голосов
/ 20 мая 2010

Вероятно, вы должны написать:

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

Более подробная информация с использованием foreach: http://msdn.microsoft.com/en-us/library/aa288257(VS.71).aspx

1 голос
/ 20 мая 2010

Кажется, вы хотите:

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