Почему не переключается песня WMPLib?

229
20 декабря 2017, 19:11

Функция, когда заканчивается песня (Сase 8 ' MediaEnded из MSDN), запускает следующую песню, но почему-то когда проигрывает песня, песня меняется, но не проигрывается.

private void Player_PlayStateChange(int NewState)
    {
        if (NewState == 8 && isRepeat)
        {
            Player.controls.stop();
            if (CurrentMediaIndex + 1 == Playlist.Count)
            {
                CurrentMediaIndex = 0;
                Player.currentMedia = Playlist.First();
            }
            else
            {
                CurrentMediaIndex++;
                Player.currentMedia = Playlist[CurrentMediaIndex];
            }
            Player.controls.play();
        }
    }
Answer 1

Нашел ответ и решение (первоисточник уже не найду). WMP нужно время, чтобы сменить аудио, поэтому проблему можно решить так:

  1. Создаём таймер private void Player_PlayStateChange(int NewState) { if (NewState == 8 && isRepeat) { Player.controls.stop(); if (CurrentMediaIndex + 1 == Playlist.Count) { CurrentMediaIndex = 0; Player.currentMedia = Playlist.First(); } else { CurrentMediaIndex++; Player.currentMedia = Playlist[CurrentMediaIndex]; } System.Windows.Threading.DispatcherTimer dispatcherTimer = new System.Windows.Threading.DispatcherTimer(); dispatcherTimer.Tick += new EventHandler(dispatcherTimer_Tick); dispatcherTimer.Interval = new TimeSpan(0, 0, 0, 0, 10); dispatcherTimer.Start(); } }
  2. Создаём событие: private void dispatcherTimer_Tick(object sender, EventArgs e) { if(Player.playState == WMPLib.WMPPlayState.wmppsReady) { Player.control.play(); (sender as System.Windows.Threading.DispatcherTimer).Stop(); } }
READ ALSO
Serialize ASCIIEncoding

Serialize ASCIIEncoding

Работаю сейчас с AR (Active Reports), есть у них классы HTMLExport, PdfExport, TextExportТак вот в текст экспорт есть public свойство Encoding Encoding, которое содержит кодировки

205
Не вызывается callback потока в C#

Не вызывается callback потока в C#

Имеется приложение на C# ASPNET MVC

220
Как передать state в this.props.children. React

Как передать state в this.props.children. React

ПриветНе знаю как при загрузке с помощью react-router какогото layaut-а передать state в this

271
Две разные строки попадают под одну регулярку

Две разные строки попадают под одну регулярку

Есть строка две строки, которые мне нужно распознавать регулярками, как разные строки /tickets/moscow/tokyo/ и /tickets/moscow/Я написал сначала регулярку...

302