Воспроизведение плейлиста с заданного элемента в Windows Media Player
Пишу MP3 плеер. В программе предусмотрены плейлисты. То есть, когда пользователь открывает музыку из определённой папки, создаётся плейлист, и вся музыка, что есть в этой папке добавляется в этот плейлист:
private void Launch(string audio)
{
DirectoryInfo info = new DirectoryInfo(Path.GetDirectoryName(audio));
WMPLib.IWMPPlaylist playlist = axWindowsMediaPlayer1.playlistCollection.newPlaylist("myplaylist");
WMPLib.IWMPMedia media;
foreach (var music in info.GetFiles())
{
media = axWindowsMediaPlayer1.newMedia(music.FullName);
playlist.appendItem(media);
}
axWindowsMediaPlayer1.currentPlaylist = playlist;
axWindowsMediaPlayer1.Ctlcontrols.play();
save.audio = axWindowsMediaPlayer1.currentMedia.sourceURL;
this.Text = "MP3";
this.Text += " " + Path.GetFileName(audio);
save.New();
}
Но столкнулся с проблемой, если, например, я выбрал допустим третий трек то воспроизведение плейлиста начнётся не с третьего трека, а с первого. В этом и вся проблема. Я, конечно, могу добавить выбранный трек в самое начало, но тогда музыка будет выводиться не по списку, ибо первым треком будет третий, а вторым первый и тд. Можно ли как-то начать воспроизведение плейлиста с выбранного мною трека?
Ответы (1 шт):
Свойство AxWindowsMediaPlayer.currentMedia задает текущий воспроизводимый элемент:
axWindowsMediaPlayer1.currentMedia = playlist.Item[3];
axWindowsMediaPlayer1.Ctlcontrols.play();