StorageFolder.CreateFolderQuery 方法

定义

重载

CreateFolderQuery()

获取包含当前文件夹中的子文件夹的查询结果对象。

CreateFolderQuery(CommonFolderQuery)

获取包含当前文件夹中的子文件夹的查询结果对象。 如果 query 参数的值不是 CommonFolderQuery.DefaultQuery,则获取表示当前文件夹子文件夹中文件组的容器的虚拟文件夹列表。 文件根据 CommonFolderQuery 枚举中的指定值分组到文件夹中。

CreateFolderQuery()

获取包含当前文件夹中的子文件夹的查询结果对象。

public:
 virtual StorageFolderQueryResult ^ CreateFolderQuery() = CreateFolderQuery;
/// [Windows.Foundation.Metadata.Overload("CreateFolderQueryOverloadDefault")]
StorageFolderQueryResult CreateFolderQuery();
[Windows.Foundation.Metadata.Overload("CreateFolderQueryOverloadDefault")]
public StorageFolderQueryResult CreateFolderQuery();
function createFolderQuery()
Public Function CreateFolderQuery () As StorageFolderQueryResult

返回

查询结果对象。 调用查询结果的 GetFoldersAsync 方法以获取当前文件夹中的子文件夹。 此方法返回 IReadOnlyList<StorageFolder> 类型的列表。 每个文件或文件夹都由 StorageFolder 类型的项表示。

实现

属性

例外

你无权访问当前文件夹的内容。

示例

以下示例演示如何通过调用 GetFoldersAsync (CommonFolderQuery) 重载方法,获取用户“图片”文件夹中子文件夹的内容(按月份分组到文件夹中)。 不包括当前文件夹根目录中的 (文件。)

在运行以下示例之前,请在应用清单文件中启用 图片库 功能。

using Windows.Storage;
using Windows.Storage.Search;
using System.Threading.Tasks;
using System.Diagnostics; // For writing results to the 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.
StorageFolderQueryResult groupedItems =
    picturesFolder.CreateFolderQuery(CommonFolderQuery.GroupByMonth);

// Iterate over the results and print the list of folders
// and files to the Visual Studio Output window.
foreach (StorageFolder folder in await groupedItems.GetFoldersAsync())
{
    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, and group them by month.
    Windows::Storage::Search::StorageFolderQueryResult results{ picturesFolder.CreateFolderQuery(Windows::Storage::Search::CommonFolderQuery::GroupByMonth) };

    Windows::Foundation::Collections::IVectorView<Windows::Storage::StorageFolder> itemsInFolder{
        co_await results.GetFoldersAsync() };

    // 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 user's pictures folder
StorageFolder^ picturesFolder = KnownFolders::PicturesLibrary;

// Get the files in the user's Pictures folder and group them by month
StorageFolderQueryResult^ itemsInFolder = picturesFolder->CreateFolderQuery(CommonFolderQuery::GroupByMonth);

create_task(itemsInFolder->GetFoldersAsync()).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());
 }
});

注解

此查询是一个浅表查询,仅返回当前文件夹中的子文件夹。 有关标识浅层查询和深度查询的方法列表,请参阅 GetFoldersAsync 方法中的备注。

若要指定其他查询选项,请调用 CreateFolderQueryWithOptions 方法。

若要获取文件或文件夹项,请调用 CreateItemQuery 方法。

另请参阅

适用于

CreateFolderQuery(CommonFolderQuery)

获取包含当前文件夹中的子文件夹的查询结果对象。 如果 query 参数的值不是 CommonFolderQuery.DefaultQuery,则获取表示当前文件夹子文件夹中文件组的容器的虚拟文件夹列表。 文件根据 CommonFolderQuery 枚举中的指定值分组到文件夹中。

public:
 virtual StorageFolderQueryResult ^ CreateFolderQuery(CommonFolderQuery query) = CreateFolderQuery;
/// [Windows.Foundation.Metadata.Overload("CreateFolderQuery")]
StorageFolderQueryResult CreateFolderQuery(CommonFolderQuery const& query);
[Windows.Foundation.Metadata.Overload("CreateFolderQuery")]
public StorageFolderQueryResult CreateFolderQuery(CommonFolderQuery query);
function createFolderQuery(query)
Public Function CreateFolderQuery (query As CommonFolderQuery) As StorageFolderQueryResult

参数

query
CommonFolderQuery

枚举值之一,该值指定如何将文件分组到文件夹中,并确定查询是浅表查询还是深层查询。

返回

查询结果对象。 调用查询结果的 GetFoldersAsync 方法以获取当前文件夹中的子文件夹。 当 query 参数的值不是 CommonFolderQuery.DefaultQuery 时,查询结果对象包含虚拟文件夹列表,这些文件夹表示当前文件夹子文件夹中文件组的容器。 (不包括当前文件夹中的文件。) 文件按 查询指定进行分组。 该列表的类型为 IReadOnlyList<StorageFolder>。 列表中的每个文件夹都由 StorageFolder 对象表示。

实现

属性

例外

你无权访问当前文件夹的内容。

你从 <xref:Windows.Storage.Search.CommonFolderQuery?text=CommonFolderQuery 枚举中为非库文件夹的文件夹指定了 DefaultQuery> 以外的值。 检查 查询的值。

注解

CommonFolderQuery 根据特定文件属性(如艺术家或专辑) )将子文件夹的内容分组到文件夹中 (。 有关指定 DefaultQuery 选项的详细信息,请参阅 CreateFileQuery 方法页上的备注。

另请参阅

适用于