J'ai suivi un exemple Microsoft sur l'accès aux dossiers sélectionnés avec un sélecteur de dossier. Après cela, je voulais obtenir tous les chemins des sous-dossiers dans le dossier supérieur sélectionné. Je n'ai pas de résultats cependant.StorageFolder ne récupère aucune donnée avec des dossiers asynchrones
code:
var folderPicker = new Windows.Storage.Pickers.FolderPicker();
folderPicker.SuggestedStartLocation = Windows.Storage.Pickers.PickerLocationId.Desktop;
folderPicker.FileTypeFilter.Add("*");
folderPicker.ViewMode = Windows.Storage.Pickers.PickerViewMode.List;
Windows.Storage.StorageFolder folder = await folderPicker.PickSingleFolderAsync();
if (folder != null)
{
Windows.Storage.AccessCache.StorageApplicationPermissions.FutureAccessList.AddOrReplace("GameFilesToken", folder);
System.Diagnostics.Debug.WriteLine(folder.Path);
await FileManagementHelper.getFolders(folder.Path);
}
public static async Task<Queue<string>> getFolders(String TopLevel)
{
var Folder = await Windows.Storage.AccessCache.StorageApplicationPermissions.FutureAccessList.GetFolderAsync("GameFilesToken");
var queryResults = Folder.CreateFolderQuery();
var folderList = await queryResults.GetFoldersAsync();
return new Queue<string>();
}
QueryResults
me donne accès à un dossier, le même dossier que je l'utilise à l'origine. FolderList
ne me donne rien.
Je comprends mon problème, la seule chose est que je dois obtenir tous les répertoires sous le niveau supérieur. Donc, comme par exemple, TopLevel \, TopLevel \ Folder1, TopLevel \ Dossier2, TopLevel \ Folder1 \ SubFolder1 –
@BaileyMiller dans ce cas, vous devez définir [FolderDepth] (https://msdn.microsoft.com/fr-fr/ library/windows/apps/windows.storage.search.queryoptions.folderdepth.aspx) propriété à profond. Détails s'il vous plaît voir ma réponse mise à jour. –