1

我正在尝试构建一个地铁应用程序,该应用程序应从同一家庭组中的另一台计算机加载图像文件(所有计算机都使用带有工作家庭组的 Windows 8 x64)。我发现的所有示例都不使用子文件夹或使用文件选择器。由于我所有的图像都在同一个文件夹中,并且我知道它们的名称,因此我不想使用文件选择器。我在 appxmanifest 中激活了“图片库”,我可以列出家庭组中的目录/计算机,但我无法打开文件或子文件夹。

这是我所做的:

var folder = await Windows.Storage.KnownFolders.HomeGroup.GetFolderAsync("homegroupname");

foreach (var a in await folder.GetFoldersAsync())
{
    Debug.WriteLine(a.Name.ToString());
}

这给了我家庭组的计算机列表(如预期的那样)。

这是我尝试但没有成功的方法:

folder = await Windows.Storage.KnownFolders.HomeGroup.GetFolderAsync(@"homegroupname\computername");
folder = await folder.GetFolderAsync(@"computername");

这些尝试没有奏效,我的想法也用完了。我必须在某处允许该文件夹吗?我打开(子)文件夹的方式是否正确?

4

1 回答 1

0

我使用以下(几乎是直观的)方法做到了:我为正确类型的文件创建了一个 CommonFileQuery,然后选择具有合适名称的文件。

List<string> fileTypeFilter = new List<string>();
fileTypeFilter.Add(".jpg");
fileTypeFilter.Add(".png");
var queryOptions = new QueryOptions(CommonFileQuery.OrderByDate, fileTypeFilter);

var query = KnownFolders.HomeGroup.CreateFileQueryWithOptions(queryOptions);
IReadOnlyList<StorageFile> fileList = await query.GetFilesAsync();
StorageFile file = fileList.FirstOrDefault(x => x.Name == "123_123.jpg");
于 2013-03-07T16:42:01.070 回答