Используйте FolderPicker программно

Я делаю приложение для Windows 10 UWP. В рамках этого приложения мне нужно иметь возможность выполнять поиск в папке "Загрузки" пользовательского устройства (а не в папке "Загрузки приложений"). Я создал средство выбора папок, чтобы пользователь мог самостоятельно выбирать папку для загрузки. Однако мне нужно сделать это без пользователя. Вот мой сборщик папок:

FolderPicker picker = new FolderPicker();
picker.FileTypeFilter.Add("*");
picker.ViewMode = PickerViewMode.List;
picker.SuggestedStartLocation = PickerLocationId.Downloads;
StorageFolder folder = await picker.PickSingleFolderAsync();

Есть ли способ, которым я мог бы использовать что-то вроде средства выбора папки, но жестко запрограммированный, чтобы в качестве места назначения всегда указывалось одно место (папка для загрузок)?

1 ответ

Вам не разрешено искать папку "Загрузки", но если все, что вам нужно, это восстановить доступ к ранее загруженному файлу, вы можете использовать FutureAccessList,

using Windows.Storage.AccessCache;

file = await DownloadsFolder.CreateFileAsync(...);
var token = StorageApplicationPermissions.FutureAccessList.Add(file,
                                           "anything you like goes here");

Возможно, вы захотите сохранить токен в локальном хранилище вашего приложения, чтобы не забыть его.

Использовать token восстановить доступ к файлу в будущем.

file = await StorageApplicationPermissions.FutureAccessList.GetFileAsync(token);
Другие вопросы по тегам