private void OnDelPlayList(ListBox listBox) { var songListItem = listBox.SelectedItem as SongListStyle; if (songListItem == null) { return; } var delSong = SongListModel.GetPlayingSong(songListItem.Song.Path); var songList = PlayListItem.Select(i => i.Song).ToList(); songList.Remove(delSong); PlayListItem = SongListModel.InitialSongList(songList); IsPlayListChanged = true; PlayingListModel.ClearPlayingList(); PlayingListModel.SavePlayingList(songList); //若删除的歌曲为正在播放的歌曲 if (delSong.Equals(PlayingSong)) { OnNext(); //播放下一曲 } }
protected void OnLast() { if (PlayListItem == null || PlayListItem.Count == 0) { return; } var songList = PlayListItem.Select(i => i.Song).ToList(); var playingIndex = songList.IndexOf(PlayingSong); if (PlayMode == PlayMode.随机播放 && IsPlayListChanged) { PlayModeService.ChangeRandomList(songList); IsPlayListChanged = false; } PlayingSong = PlayModeService.OnLastExecute(PlayMode, songList, playingIndex); if (ControlService.PlayState != PlayState.播放) { ControlService.PlayState = PlayState.播放; } else { ControlService.PlayService.MediaPlayer.Play(); } }
private void OnModeChange() { PlayMode = PlayModeService.OnModeChange(PlayMode); if (PlayMode == PlayMode.随机播放) { PlayModeService.ChangeRandomList(PlayListItem.Select(i => i.Song).ToList()); } }
private void OnAddPlayList(ListBox listBox) { var songList = PlayListItem.Select(i => i.Song).ToList(); var songListItem = listBox.SelectedItem as SongListStyle; if (songListItem == null) { return; } songList.Add(songListItem.Song); PlayListItem = SongListModel.InitialSongList(songList); IsPlayListChanged = true; PlayingListModel.ClearPlayingList(); PlayingListModel.SavePlayingList(songList); }
private void MediaEnd(object sender, EventArgs e) { if (PlayListItem == null || PlayListItem.Count == 0) { return; } var songList = PlayListItem.Select(i => i.Song).ToList(); var playingIndex = songList.IndexOf(PlayingSong); if (PlayMode == PlayMode.随机播放 && IsPlayListChanged) { PlayModeService.ChangeRandomList(songList); IsPlayListChanged = false; } PlayingSong = PlayModeService.GetNextSong(PlayMode, songList, playingIndex); ControlService.PlayService.MediaPlayer.Play(); }