Windows API Codepack.在CommonOpenfiledialog中获取所有选定的项目:Ifileop



i与Microsoft®.NET框架的Windows®API代码包一起使用CommonOpenfiledialog类,该框架实现了Ifileopendialog接口。

有关Windows API Codepack的更多信息:http://archive.msdn.microsoft.com/windowsapicodepack

问题:以下方法返回第一个选择的文件夹 if(多个文件夹)或(mutltiple文件夹和文件)在"打开文件对话框"对话框窗口中选择。

IFileOpenDialog.GetSelectedItems([MarshalAs(UnmanagedType.Interface)] out IShellItemArray ppsai)

如何返回所有选定的元素(文件夹和文件)在ifileopendialog窗口中作为ishellitem列表,无论我在那里选择了什么?

您需要指定 MultiSelect 属性。

这是一个未划定的示例:

CommonOpenFileDialog folderDialog = new CommonOpenFileDialog("Input Folder Selection");
        folderDialog.IsFolderPicker = true;
        folderDialog.Multiselect = true;
        if (folderDialog.ShowDialog() == CommonFileDialogResult.Ok)
        {
            foreach (string folderName in folderDialog.FileNames)   //it's a little confusing, but FileNames represents folders as well in the API
            {
                // do something
            }
        }

相关内容

  • 没有找到相关文章

最新更新