我可以使用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);
您可以看到在选择所有文件时将打开资源管理器.