private void DeleteMusic(Func <MusicInfo, bool> func) { bool playNext = false; for (int i = 0; i < MusicInfoList.Count;) { MusicInfoList[i].RowNum = i + 1; if (func(MusicInfoList[i])) { if (MusicInfoList[i] == MusicPlayHelper.PlayMusicInfo) { playNext = true; } MusicInfoList.RemoveAt(i); } else { i++; } } if (playNext) { StopAndPlayNext(); } }
private void AddMusicFile(params string[] filePaths) { foreach (var filePath in filePaths) { if (MusicInfoList.All(info => info.FilePath != filePath)) { MusicInfo musicInfo = MusicInfoHelper.GetMusicInfo(filePath); musicInfo.RowNum = MusicInfoList.Count + 1; musicInfo.AddTime = DateTime.Now; musicInfo.FilePath = filePath; musicInfo.PlayTimes = 0; musicInfo.PlayStatus = PlayStatus.Normal; MusicInfoList.Add(musicInfo); } } }