首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >文件夹浏览器对话框类似于打开文件对话框

文件夹浏览器对话框类似于打开文件对话框
EN

Stack Overflow用户
提问于 2012-06-12 12:37:02
回答 4查看 30.5K关注 0票数 19

请参阅下面的快照。这取自Visual Studio2008中的“新建项目”工作流程。

此窗口用于选择将存储项目的文件夹。如何在c#应用程序中创建类似的窗口?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2015-02-11 16:01:52

这与Office中类似,这是一个允许选择文件夹的对话框。唯一的区别是选择文件夹按钮被命名为"OK“而不是"Select folder”。

代码语言:javascript
运行
复制
Microsoft.Office.Interop.Excel.Application app = new Microsoft.Office.Interop.Excel.Application();
Microsoft.Office.Core.FileDialog fileDialog = app.get_FileDialog(Microsoft.Office.Core.MsoFileDialogType.msoFileDialogFolderPicker);
fileDialog.InitialFileName = "c:\\Temp\\"; //something you want
int nres = fileDialog.Show();
if (nres == -1) //ok
{
    Microsoft.Office.Core.FileDialogSelectedItems selectedItems = fileDialog.SelectedItems;

    string[] selectedFolders = selectedItems.Cast<string>().ToArray();

    if (selectedFolders.Length > 0)
    {
        string selectedFolder = selectedFolders[0];
    }
}

当然,您需要添加对Microsoft.Office.Core (Microsoft Office14.0对象库)和Microsoft.Office.Interop.Excel (Microsoft Excel14.0对象库)的引用。

票数 6
EN

Stack Overflow用户

发布于 2014-02-09 02:49:47

我发现了一篇关于默认FolderBrowserDialog及其局限性的好文章:http://www.ssware.com/articles/folderbrowserdialog-unmasked-everything-you-wanted-to-know-about-the-folder-browser-component-from-dotnet-framework.htm

有一个第三方组件“外壳MegaPack”(http://www.ssware.com/megapack.htm)从ssware提供windows资源管理器一样的文件和文件夹浏览器控件的WinForms,ASP.net和WPF。

票数 3
EN

Stack Overflow用户

发布于 2018-03-04 02:33:42

如果你可以添加一个nuget包,Microsoft.WindowsAPICodePack.Shell有一个可以在“文件夹模式”下使用的CommonOpenFileDialog,它应该与你想要的用途相匹配。

代码语言:javascript
运行
复制
var directoryDialog = new CommonOpenFileDialog
  {
     IsFolderPicker = true,
     Title = "Select Folder"
  };
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10990612

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档