コード例 #1
0
        /// <summary>
        /// 编辑歌曲标签按钮命令
        /// </summary>
        /// <param name="listBox"></param>
        private void SongListEditTagsMenuExecute(ListBox listBox)
        {
            var songListItem = listBox.SelectedItem as SongListStyle;

            if (songListItem == null)
            {
                return;
            }
            var song = SongListModel.GetPlayingSong(songListItem.Song.Path);
            TagsEditingWindow tagsEditingWindow = new TagsEditingWindow();

            //TagsEditingWindowViewModel.TagsList =
            //    songListStyle?.Song.Tags != null
            //        ? new List<string>(songListStyle.Song.Tags)
            //        : new List<string>();

            Songs.SongTags =
                song.Tags != null
                                        ? new List <string>(song.Tags)
                                        : new List <string>();
            TagsEditingWindowViewModel tagsEditingWindowViewModel = new TagsEditingWindowViewModel();

            tagsEditingWindow.DataContext = tagsEditingWindowViewModel;
            tagsEditingWindow.ShowDialog();

            if (tagsEditingWindow.DialogResult != true)
            {
                return;
            }
            SongListModel.ClearSongTags(songListItem.Song);            //将数据库中该歌曲的标签清空
            songListItem.Song.Tags = new List <string>(Songs.SongTags /*TagsEditingWindowViewModel.TagsList*/);
            SongListModel.SaveSongTags(songListItem.Song);
        }
コード例 #2
0
        public static void EditSongTags(Selector listBox)
        {
            var songListItem = listBox.SelectedItem as SongListItem;

            if (songListItem == null)
            {
                return;
            }
            var selectedSong = songListItem.Song;

            var tagsEditViewModel = new TagsEditViewModel(selectedSong);
            var tagEditWindow     = new TagsEditingWindow()
            {
                DataContext = tagsEditViewModel
            };

            tagEditWindow.ShowDialog();

            if (tagEditWindow.DialogResult != true)
            {
                return;
            }
        }