StorageFolder.GetFoldersAsync Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Overload
GetFoldersAsync() |
Ottiene le sottocartelle nella cartella corrente. |
GetFoldersAsync(CommonFolderQuery) |
Ottiene le sottocartelle nella cartella corrente. Quando il valore dell'argomento di query è diverso da CommonFolderQuery.DefaultQuery, ottiene un elenco di cartelle virtuali che rappresentano contenitori per i gruppi di file nelle sottocartelle della cartella corrente. I file vengono raggruppati in cartelle in base al valore specificato dall'enumerazione CommonFolderQuery . |
GetFoldersAsync(CommonFolderQuery, UInt32, UInt32) |
Ottiene un intervallo di cartelle basato su indice dall'elenco di tutte le sottocartelle nella cartella corrente. Quando il valore dell'argomento di query è diverso da CommonFolderQuery.DefaultQuery, ottiene un elenco di cartelle virtuali che rappresentano contenitori per i gruppi di file nelle sottocartelle della cartella corrente. I file vengono raggruppati in cartelle in base al valore specificato dall'enumerazione CommonFolderQuery . |
GetFoldersAsync()
Ottiene le sottocartelle nella cartella corrente.
public:
virtual IAsyncOperation<IVectorView<StorageFolder ^> ^> ^ GetFoldersAsync() = GetFoldersAsync;
/// [Windows.Foundation.Metadata.Overload("GetFoldersAsyncOverloadDefaultOptionsStartAndCount")]
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperation<IVectorView<StorageFolder>> GetFoldersAsync();
[Windows.Foundation.Metadata.Overload("GetFoldersAsyncOverloadDefaultOptionsStartAndCount")]
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperation<IReadOnlyList<StorageFolder>> GetFoldersAsync();
function getFoldersAsync()
Public Function GetFoldersAsync () As IAsyncOperation(Of IReadOnlyList(Of StorageFolder))
Restituisce
Al termine di questo metodo, restituisce un elenco delle sottocartelle nella cartella corrente. L'elenco è di tipo IReadOnlyList<StorageFolder>. Ogni cartella nell'elenco è rappresentata da un oggetto StorageFolder .
Implementazioni
- Attributi
Eccezioni
Non si dispone dell'autorizzazione per accedere al contenuto della cartella corrente. Per altre informazioni, vedere Autorizzazioni di accesso ai file.
Esempio
Nell'esempio seguente viene illustrato come ottenere il contenuto delle sottocartelle nella cartella Pictures dell'utente, raggruppata per mese, chiamando il metodo GetFoldersAsync(CommonFolderQuery, UInt32, UInt32). I file dalla radice della cartella corrente non sono inclusi. In questo esempio vengono restituite al massimo 4 cartelle, a partire dalla cartella in corrispondenza dell'indice 0. Poiché l'opzione CommonFolderQuery.GroupByMonth ordina le date in ordine decrescente , ovvero dal più recente al meno recente, questo esempio restituisce le cartelle per i 4 mesi più recenti per cui l'utente dispone di foto. Ogni cartella contiene tutte le foto dell'utente di quel mese.
Prima di eseguire l'esempio seguente, abilitare la funzionalità Raccolta immagini nel file manifesto dell'app.
using Windows.Storage;
using Windows.Storage.Search;
using System.Threading.Tasks;
using System.Diagnostics; // For writing results to Output window.
// Get the user's Pictures folder.
// Enable the corresponding capability in the app manifest file.
StorageFolder picturesFolder = KnownFolders.PicturesLibrary;
// Get the files in the subfolders of the user's Pictures folder,
// grouped by month. Get only the first 4 folders (months).
IReadOnlyList <StorageFolder> groupedItems = await picturesFolder.GetFoldersAsync(CommonFolderQuery.GroupByMonth, 0, 4);
// Iterate over the results and print the list of folders
// and files to the Visual Studio Output window.
foreach (StorageFolder folder in groupedItems)
{
Debug.WriteLine(folder.Name);
// To iterate over the files in each folder, uncomment the following lines.
// foreach(StorageFile file in await folder.GetFilesAsync())
// Debug.WriteLine(" " + file.Name);
}
IAsyncAction MainPage::ExampleCoroutineAsync()
{
// Get the users's Pictures folder.
// Enable the Pictures Library capability in the app manifest file.
Windows::Storage::StorageFolder picturesFolder{ Windows::Storage::KnownFolders::PicturesLibrary() };
// Get the files in the user's Pictures folder, grouped by month.
// Get only the first 4 folders (months).
Windows::Foundation::Collections::IVectorView<Windows::Storage::StorageFolder> itemsInFolder{
co_await picturesFolder.GetFoldersAsync(Windows::Storage::Search::CommonFolderQuery::GroupByMonth, 0, 4) };
// Iterate over the results, and print the list of file groups to the Visual Studio output window.
for (StorageFolder const& itemInFolder : itemsInFolder)
{
std::wstring output{ itemInFolder.Name() };
::OutputDebugString(output.c_str());
}
}
// Get the user's Pictures folder.
// Enable the corresponding capability in the app manifest file.
StorageFolder^ picturesFolder = KnownFolders::PicturesLibrary;
// Get the files in the user's Pictures folder, grouped by month.
// Get only the first 4 folders (months).
create_task(picturesFolder->GetFoldersAsync(CommonFolderQuery::GroupByMonth, 0, 4)).then([=](IVectorView<StorageFolder^>^ itemsInFolder) {
//Iterate over the results and print the list of file groups
// to the visual studio output window
for (auto it = itemsInFolder->First(); it->HasCurrent; it->MoveNext())
{
StorageFolder^ file = it->Current;
String^ output = file->Name + "\n";
OutputDebugString(output->Begin());
}
});
Commenti
Questa query è una query superficiale che restituisce solo sottocartelle nella cartella corrente.
Nella tabella seguente sono elencati i metodi della classe StorageFolder che ottengono un elenco di sottocartelle. La tabella identifica le query superficiali che restituiscono solo sottocartelle dalla cartella corrente e query approfondite che restituiscono il contenuto delle sottocartelle nidificate, raggruppate in cartelle virtuali.
Alcuni metodi accettano un valore dall'enumerazione CommonFolderQuery .
- Quando si usa l'opzione DefaultQuery con qualsiasi cartella, la query restituisce un elenco di sottocartelle nel file system.
- Quando si usa un'opzione diversa da DefaultQuery con una cartella di libreria, la query restituisce un elenco di cartelle virtuali che rappresentano contenitori per i file dalle sottocartelle della cartella corrente. I file della cartella corrente non sono inclusi. I file vengono raggruppati in cartelle virtuali in base al valore specificato dall'enumerazione CommonFolderQuery . Ad esempio, se si specifica GroupByMonth, la query restituisce un elenco di cartelle virtuali,
July 2014
ad esempio ,August 2014
eSeptember 2014
.
Suggerimento
È possibile usare l'opzione DefaultQuery con qualsiasi cartella; è possibile utilizzare le altre opzioni dell'enumerazione CommonFolderQuery solo con le cartelle di libreria, ad esempio la raccolta Immagini o la cartella Homegroup.
Per ottenere risultati di query approfonditi da una cartella che non è una cartella di libreria, chiamare il metodo CreateFolderQueryWithOptions(QueryOptions) e specificare Deep come valore della proprietà FolderDepth dell'oggetto QueryOptions .
Metodo | Creare una query superficiale che restituisca solo sottocartelle dalla cartella corrente | Creare una query completa che restituisca tutte le sottocartelle annidate |
---|---|---|
GetFoldersAsync() | Comportamento predefinito di questo metodo. | N/D |
GetFoldersAsync(CommonFileQuery) | Specificare l'opzione DefaultQuery . | Per una cartella di libreria, specificare un'opzione diversa da DefaultQuery. |
GetFoldersAsync(CommonFileQuery, UInt32, UInt32) | Specificare l'opzione DefaultQuery . | Per una cartella di libreria, specificare un'opzione diversa da DefaultQuery. |
CreateFolderQuery() | Comportamento predefinito di questo metodo. | N/D |
CreateFolderQuery(CommonFileQuery) | Specificare l'opzione DefaultQuery . | Per una cartella di libreria, specificare un'opzione diversa da DefaultQuery. |
CreateFolderQueryWithOptions(QueryOptions) | Comportamento predefinito di questo metodo se non viene specificata alcuna delle opzioni seguenti. - oppure - Specificare DefaultQuery come valore di CommonFolderQuery quando si crea un'istanza dell'oggetto QueryOptions . - oppure - Specificare Shallow come valore della proprietà FolderDepth dell'oggetto QueryOptions. |
Per una cartella di libreria, specificare un valore diverso da DefaultQuery come valore di CommonFolderQuery quando si crea un'istanza dell'oggetto QueryOptions . - oppure - Per qualsiasi cartella, specificare Deep come valore della proprietà FolderDepth di QueryOptions. |
Vedi anche
- GetFoldersAsync(CommonFolderQuery, UInt32, UInt32)
- GetFoldersAsync(CommonFolderQuery)
- Autorizzazioni di accesso ai file
- GetItemsAsync
Si applica a
GetFoldersAsync(CommonFolderQuery)
Ottiene le sottocartelle nella cartella corrente. Quando il valore dell'argomento di query è diverso da CommonFolderQuery.DefaultQuery, ottiene un elenco di cartelle virtuali che rappresentano contenitori per i gruppi di file nelle sottocartelle della cartella corrente. I file vengono raggruppati in cartelle in base al valore specificato dall'enumerazione CommonFolderQuery .
public:
virtual IAsyncOperation<IVectorView<StorageFolder ^> ^> ^ GetFoldersAsync(CommonFolderQuery query) = GetFoldersAsync;
/// [Windows.Foundation.Metadata.Overload("GetFoldersAsyncOverloadDefaultStartAndCount")]
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperation<IVectorView<StorageFolder>> GetFoldersAsync(CommonFolderQuery const& query);
[Windows.Foundation.Metadata.Overload("GetFoldersAsyncOverloadDefaultStartAndCount")]
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperation<IReadOnlyList<StorageFolder>> GetFoldersAsync(CommonFolderQuery query);
function getFoldersAsync(query)
Public Function GetFoldersAsync (query As CommonFolderQuery) As IAsyncOperation(Of IReadOnlyList(Of StorageFolder))
Parametri
- query
- CommonFolderQuery
Uno dei valori di enumerazione che specifica come raggruppare i file in cartelle e determina se la query è superficiale o profonda.
Restituisce
Al termine di questo metodo, restituisce un elenco di sottocartelle. Quando il valore dell'argomento query è diverso da CommonFolderQuery.DefaultQuery, questo metodo restituisce un elenco di cartelle virtuali che rappresentano contenitori per i gruppi di file nelle sottocartelle della cartella corrente. I file della cartella corrente non sono inclusi. I file vengono raggruppati come specificato dalla query. L'elenco è di tipo IReadOnlyList<StorageFolder>. Ogni cartella nell'elenco è rappresentata da un oggetto StorageFolder .
Implementazioni
- Attributi
Eccezioni
Non si dispone dell'autorizzazione per accedere al contenuto della cartella corrente. Per altre informazioni, vedere Autorizzazioni di accesso ai file.
Vedi anche
- GetFoldersAsync(CommonFolderQuery, UInt32, UInt32)
- GetFoldersAsync()
- Autorizzazioni di accesso ai file
- GetItemsAsync
Si applica a
GetFoldersAsync(CommonFolderQuery, UInt32, UInt32)
Ottiene un intervallo di cartelle basato su indice dall'elenco di tutte le sottocartelle nella cartella corrente. Quando il valore dell'argomento di query è diverso da CommonFolderQuery.DefaultQuery, ottiene un elenco di cartelle virtuali che rappresentano contenitori per i gruppi di file nelle sottocartelle della cartella corrente. I file vengono raggruppati in cartelle in base al valore specificato dall'enumerazione CommonFolderQuery .
public:
virtual IAsyncOperation<IVectorView<StorageFolder ^> ^> ^ GetFoldersAsync(CommonFolderQuery query, unsigned int startIndex, unsigned int maxItemsToRetrieve) = GetFoldersAsync;
/// [Windows.Foundation.Metadata.Overload("GetFoldersAsync")]
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperation<IVectorView<StorageFolder>> GetFoldersAsync(CommonFolderQuery const& query, uint32_t const& startIndex, uint32_t const& maxItemsToRetrieve);
[Windows.Foundation.Metadata.Overload("GetFoldersAsync")]
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperation<IReadOnlyList<StorageFolder>> GetFoldersAsync(CommonFolderQuery query, uint startIndex, uint maxItemsToRetrieve);
function getFoldersAsync(query, startIndex, maxItemsToRetrieve)
Public Function GetFoldersAsync (query As CommonFolderQuery, startIndex As UInteger, maxItemsToRetrieve As UInteger) As IAsyncOperation(Of IReadOnlyList(Of StorageFolder))
Parametri
- query
- CommonFolderQuery
Uno dei valori di enumerazione che specifica come raggruppare i file in cartelle e determina se la query è superficiale o profonda.
- startIndex
-
UInt32
unsigned int
uint32_t
Indice in base zero della prima cartella nell'intervallo da recuperare.
- maxItemsToRetrieve
-
UInt32
unsigned int
uint32_t
Numero massimo di cartelle da recuperare.
Restituisce
Al termine di questo metodo, restituisce un elenco di sottocartelle. Quando il valore dell'argomento query è diverso da CommonFolderQuery.DefaultQuery, questo metodo restituisce un elenco di cartelle virtuali che rappresentano contenitori per i gruppi di file nelle sottocartelle della cartella corrente. I file della cartella corrente non sono inclusi. I file vengono raggruppati come specificato dalla query. L'elenco è di tipo IReadOnlyList<StorageFolder>. Ogni cartella nell'elenco è rappresentata da un oggetto StorageFolder .
Implementazioni
- Attributi
Eccezioni
Non si dispone dell'autorizzazione per accedere al contenuto della cartella corrente. Per altre informazioni, vedere Autorizzazioni di accesso ai file.
Vedi anche
- GetFoldersAsync(CommonFolderQuery)
- GetFoldersAsync()
- Autorizzazioni di accesso ai file
- GetItemsAsync