Получить индекс текущей воспроизводимой / приостановленной песни в списке воспроизведения [Библиотека проигрывателя Windows Media]
Вот мой код настройки плейлиста, работающий с библиотекой Windows Media Player.
Сейчас я занимаюсь созданием медиаплеера и предоставлением ему плейлиста.
WindowsMediaPlayer wmPlayer = new WindowsMediaPlayer();
wmPlayer.PlayStateChange += Player_PlayStateChange;
IWMPPlaylist playlist = wmPlayer.playlistCollection.newPlaylist("All");
wmPlayer.currentPlaylist = playlist;
Затем я добавляю песни в плейлист
IWMPMedia media = _wmPlayer.newMedia(path); //path to mp3 is given via method parameter
wmPlayer.currentPlaylist.appendItem(media);
Это позволяет мне легко выполнять основные элементы управления музыкальным проигрывателем, и мне не нужно вручную переходить к следующей / предыдущей песне.
wmPlayer.controls.play();
wmPlayer.controls.pause();
wmPlayer.controls.next();
wmPlayer.controls.previous();
Что я хотел бы сделать, это получить индекс текущего мультимедиа, который воспроизводится / приостанавливается в списке воспроизведения (wmPlayer.currentPlaylist
). Это возможно?
Я знаю, что вы можете получить песню по определенному индексу через wmPlayer.currentPlaylist.Item[index];
, но я не могу узнать, как получить индекс текущей песни.
Буду признателен за любую оказанную помощь. Благодарю.
1 ответ
Пусть вам поможет следующий код.
int index;
for (int i = 0; i < playlist.count - 1; i++)
{
if (wmPlayer.currentMedia.isIdentical[playlist.Item[i]])
{
index = i;
break;
}
}