async void RenamePlaylist(object playlist) { var selectedPlaylist = playlist != null ? playlist as Playlist : Playlist; //get the playlist to delete. var dialog = new InputDialog() { Title = "Rename this playlist", Text = selectedPlaylist.Name, Description = selectedPlaylist.Description }; var Playlists = new Dictionary <Playlist, IEnumerable <Mediafile> >(); if (await dialog.ShowAsync() == ContentDialogResult.Primary) { var pl = new Playlist() { Name = dialog.Text, Description = dialog.Description }; string path = ApplicationData.Current.LocalFolder.Path + @"\playlists\"; if (File.Exists(path + selectedPlaylist.Name + ".db")) { File.Move(path + selectedPlaylist.Name + ".db", path + pl.Name + ".db"); } PlaylistsItems.First(t => t.Label == selectedPlaylist.Name).Arguments = pl; PlaylistsItems.First(t => t.Label == selectedPlaylist.Name).Label = pl.Name; //change playlist name in the hamburgermenu OptionItems.First(t => t.Text == selectedPlaylist.Name).Text = pl.Name; //change playlist name in context menu of each song. using (LibraryService service = new LibraryService(new DatabaseService())) { service.RemovePlaylist(selectedPlaylist); //delete from database. service.AddPlaylist(pl); //add new playlist in the database. Playlist = pl; //set this.Playlist to pl (local variable); } } }
async void DeletePlaylist(object playlist) { var selectedPlaylist = playlist != null ? playlist as Playlist : Playlist; //get the dictionary containing playlist and songs. MessageDialog dia = new MessageDialog("Do you want to delete this playlist?", "Confirmation"); dia.Commands.Add(new Windows.UI.Popups.UICommand("Yes") { Id = 0 }); dia.Commands.Add(new Windows.UI.Popups.UICommand("No") { Id = 1 }); dia.DefaultCommandIndex = 0; dia.CancelCommandIndex = 1; var result = await dia.ShowAsync(); if (result.Label == "Yes") { string path = ApplicationData.Current.LocalFolder.Path + @"\playlists\" + selectedPlaylist.Name + ".db"; if (File.Exists(path)) { File.Delete(path); } PlaylistsItems.Remove(PlaylistsItems.First(t => t.Label == selectedPlaylist.Name)); //delete from hamburger menu OptionItems.Remove(OptionItems.First(t => t.Text == selectedPlaylist.Name)); //delete from context menu using (LibraryService service = new LibraryService(new DatabaseService())) { service.RemovePlaylist(selectedPlaylist);//delete from database. } } }
public void Reset() { LibraryService.Dispose(); LibraryService = null; TracksCollection.Clear(); RecentlyPlayedCollection.Clear(); GenreFlyout?.Items.Clear(); PlaylistsItems?.Clear(); OldItems = null; PlaylistCollection.Clear(); OptionItems.Clear(); GenreCollection.Clear(); SongCount = -1; }
public void AddPlaylist(Playlist Playlist) { var cmd = new ContextMenuCommand(AddToPlaylistCommand, Playlist.Name); OptionItems.Add(cmd); PlaylistsItems.Add(new SplitViewMenu.SimpleNavMenuItem { Arguments = Playlist, Label = Playlist.Name, DestinationPage = typeof(PlaylistView), Symbol = Symbol.List, FontGlyph = "\u0045" }); }