public PlaylistsManagePageViewModel(Func <IDataSource> getGeDataSource, IConnectionListener connectionListener, IPlaylistsChangeHandler playlistsChangeHandler) { _getGeDataSource = getGeDataSource; _playlistsChangeHandler = playlistsChangeHandler; _playlistListViewModel = new MyPlaylistListViewModel(_getGeDataSource, connectionListener, new DeleteContextMenuStrategy(), playlistsChangeHandler); _playlistListViewModel.FirstLoad(); _createCommand = new RelayCommand(CreatePlaylist, CanCreateNewPlaylist); _accessItems = new List <AccessItem>() { new AccessItem(PrivacyStatus.Public), new AccessItem(PrivacyStatus.Private) }; _selectedAccess = _accessItems.First(); }
private async void CreatePlaylist() { var newPlaylist = await _getGeDataSource().AddNewPlaylist(PlaylistTitle, PlaylistDescription, _selectedAccess.Status); if (newPlaylist != null) { PlaylistListViewModel.Items.Insert(0, new PlaylistNodeViewModel(newPlaylist, _getGeDataSource(), new DeleteContextMenuStrategy(), PlaylistListViewModel.Delete, false)); _playlistsChangeHandler.UpdatePlaylists(); } //Clear data PlaylistTitle = string.Empty; PlaylistDescription = string.Empty; SelectedAccess = AccessItems.First(); }