private void ListItemSelect(object sender, SelectionChangedEventArgs e) { songGrid.IsReadOnly = true; if (playListBox.SelectedItem != null) { if (playListBox.SelectedItem.ToString() == "All Music") { var AllMusic = musicLibrary.Songs; songGrid.ItemsSource = AllMusic.DefaultView; songGrid.IsReadOnly = false; } else { var selectedPlaylist = playListBox.SelectedItem.ToString(); var songs = musicLibrary.SongsForPlaylist(selectedPlaylist); songGrid.ItemsSource = songs.DefaultView; } } }
private void playlistList_SelectionChanged(object sender, SelectionChangedEventArgs e) { DataTable table; if ((sender as ListBox).SelectedItem != null) { playlistName = (sender as ListBox).SelectedItem.ToString(); if (playlistName == "All Music") { table = musicLib.Songs; dataGrid.ItemsSource = table.DefaultView; } else { table = musicLib.SongsForPlaylist(playlistName); dataGrid.ItemsSource = table.DefaultView; } } }
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(); }