private void addPlaylistBtn_Clicked(object sender, RoutedEventArgs e) { AddPlaylist addPlaylistWindow = new AddPlaylist(); addPlaylistWindow.Owner = this; addPlaylistWindow.ShowDialog(); if (addPlaylistWindow.DialogResult == true) { string newPlaylistName = addPlaylistWindow.newPlaylistName; if (musicLib.PlaylistExists(newPlaylistName)) { MessageBox.Show("There is already a playlist with that name"); } else { musicLib.AddPlaylist(newPlaylistName); List <string> updatedPlaylists = new List <string>(); updatedPlaylists.Add("All Music"); updatedPlaylists.AddRange(musicLib.Playlists); playlistList.ItemsSource = updatedPlaylists; } } }
private void RefreshSongs() { var playlist = playlistListBox.SelectedItem?.ToString(); if (playlist == "All Music" || playlist == null) { displayedSongs.Clear(); foreach (DataRow row in musicLib.Songs.Rows) { Song s = musicLib.GetSong(int.Parse(row["id"].ToString())); displayedSongs.Add(s); } dataGrid.IsReadOnly = false; RemoveBtn.Header = "Remove"; } else { if (!musicLib.PlaylistExists(playlist)) { return; } displayedSongs.Clear(); foreach (DataRow row in musicLib.SongsForPlaylist(playlist).Rows) { Song s = musicLib.GetSong(int.Parse(row["id"].ToString())); s.Position = int.Parse(row["position"].ToString()); displayedSongs.Add(s); } dataGrid.IsReadOnly = true; RemoveBtn.Header = "Remove from Playlist"; } dataGrid.SelectedItem = null; dataGrid.Items.Refresh(); }