private async void AddExcluded() { var picker = new FolderPicker { SuggestedStartLocation = PickerLocationId.MusicLibrary, ViewMode = PickerViewMode.List }; picker.FileTypeFilter.Add("*"); var folder = await picker.PickSingleFolderAsync(); if (folder != null) { if (!LibraryFolders.Any(f => folder.Path.IsSubPathOf(f.Path))) { await new MessageDialog(CommonSharedStrings.SelectionNotInLibraryPrompt).ShowAsync(); } else { var folderModel = new FolderModel { Path = folder.Path, Name = folder.Name }; PathExclusion.AddExcludedPath(folder.Path); folderModel.RemoveFolderButtonClickedRelayCommand = new RelayCommand <RoutedEventArgs>(e => { PathExclusion.RemoveExcludedPath(folder.Path); ExcludedFolders.Remove(folderModel); }); ExcludedFolders.Add(folderModel); } } }
/// <summary> /// Handle adding folders. /// </summary> private async void AddFolderStub() { // Select a folder. var libraryFolders = await StorageLibrary.GetLibraryAsync(KnownLibraryId.Music); var folder = await libraryFolders.RequestAddFolderAsync(); if (folder == null || LibraryFolders.Any((c) => c.Path == folder.Path)) { return; } // Add folder to library. LibraryFolders.Add(new FolderModel { Name = folder.Name, Path = folder.Path, RemoveFolderButtonClickedRelayCommand = _removeFolderButtonClickedRelayCommand }); }
private async void AddAccessFolder() { var picker = new FolderPicker { SuggestedStartLocation = PickerLocationId.ComputerFolder, ViewMode = PickerViewMode.List }; picker.FileTypeFilter.Add("*"); var folder = await picker.PickSingleFolderAsync(); if (folder != null) { if (AccessFolders.Any(f => folder.Path.IsSubPathOf(f.Path)) || LibraryFolders.Any(f => folder.Path.IsSubPathOf(f.Path))) { await new MessageDialog(CommonSharedStrings.AlreadyHaveAccessPrompt).ShowAsync(); } else { var folderModel = new FolderModel { Path = folder.Path, Name = folder.Name }; var token = await FutureAccessListHelper.Instance.AuthorizeStorageItem(folder); folderModel.RemoveFolderButtonClickedRelayCommand = new RelayCommand <RoutedEventArgs>( async(e) => { await FutureAccessListHelper.Instance.RemoveAuthorizedItemAsync(token); AccessFolders.Remove(folderModel); }); AccessFolders.Add(folderModel); } } }