c# – 有没有办法打开文件资源管理器并从UWP应用程序中选择一个文件?

前端之家收集整理的这篇文章主要介绍了c# – 有没有办法打开文件资源管理器并从UWP应用程序中选择一个文件?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我可以使用Launcher.LaunchFolderAsync()( +)从UWP应用程序打开文件资源管理器,但有没有办法在该文件浏览器窗口中选择文件

Win32应用程序中有some ways to achieve this涉及直接调用explorer.exe并将参数传递给它,这显然不适用于UWP.

解决方法

您也可以使用Launcher.LaunchFolderAsync并使用第二个参数Folder Launcher Options.

Folder Launcher Options可以使您选择使用ItemsToSelect的文件文件夹.

ItemsToSelect是只读属性,但您可以将项添加到现有列表中.

这是一个示例,使用FolderPicker获取文件夹,然后选择所有文件

第一个是获取文件夹:

FolderPicker p = new FolderPicker();
        p.FileTypeFilter.Add(".txt");
        StorageFolder folder = await p.PickSingleFolderAsync();

然后获取文件夹中的所有文件

foreach (var temp in await folder.GetFilesAsync())

我可以使用FolderLauncherOptions来添加我想要选择的项目.

var t = new FolderLauncherOptions();
        foreach (var temp in await folder.GetFilesAsync())
        {
            t.ItemsToSelect.Add(temp);
        }

然后打开文件资源管理器

await Launcher.LaunchFolderAsync(folder,t);

您可以看到在选择所有文件时将打开资源管理器.

您还可以向ItemsToSelect添加文件夹,它将被选中.

有关详细信息,请参见此处:https://docs.microsoft.com/en-us/uwp/api/Windows.System.Launcher#Windows_System_Launcher_LaunchFolderAsync_Windows_Storage_IStorageFolder_Windows_System_FolderLauncherOptions_

猜你在找的C#相关文章