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);
                }
            }
        }