首页 > 其他分享 >【WinForm】使用选择文件的窗口样式选择文件夹

【WinForm】使用选择文件的窗口样式选择文件夹

时间:2022-11-22 16:48:28浏览次数:76  
标签:Dialogs Ookii WindowsAPICodePack 选择 文件夹 管理器 WinForm

使用选择文件的窗口样式选择文件夹

零、需求

传统的选择文件夹的方式太小了,不好操作,不过选择文件的方式倒是挺不错的,能不能把选择文件夹的方式改为选择文件这种样式呢?

  • 选择文件夹
    传统的选择文件夹
  • 选择文件
    传统的选择文件

壹、解决

1. 通过 WindowsAPICodePack 解决

安装

在VS中选择 “工具” -> “NuGet 包管理器” -> “程序包管理器控制台” 输入如下命令安装 WindowsAPICodePack 1.1.2 。

NuGet\Install-Package WindowsAPICodePack -Version 1.1.2

或者通过以下链接下载:

https://www.nuget.org/api/v2/package/WindowsAPICodePack/1.1.2

或者下载我上传到博客园的资源:

Winform选择文件夹对话框插件.7z

下载好后安装好即可。

使用

var commonOpenFileDialog = new CommonOpenFileDialog
{
    IsFolderPicker = true, //设置为true为选择文件夹,设置为false为选择文件
    Title = "选择文件夹",
    InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles)
};

var result = commonOpenFileDialog.ShowDialog();
if (result == CommonFileDialogResult.Ok)
{
    string str = commonOpenFileDialog.FileName;
    MessageBox.Show(str);
}

效果

WindowsAPICodePack 选择文件夹

2. 通过Ookii解决

安装

在VS中选择 “工具” -> “NuGet 包管理器” -> “程序包管理器控制台” 输入如下命令安装 Ookii.Dialogs.WinForms 1.0.0 (.Net版本需要4.5及以上)。

NuGet\Install-Package Ookii.Dialogs.WinForms -Version 1.0.0

或者通过以下链接下载:

https://www.nuget.org/api/v2/package/Ookii.Dialogs.WinForms/1.0.0

或者下载我上传到博客园的资源:

Winform选择文件夹对话框插件.7z

下载好后安装好即可。

使用

var folderDialog = new Ookii.Dialogs.WinForms.VistaFolderBrowserDialog
{
    Description = "选择文件夹"
};

if (folderDialog.ShowDialog() == DialogResult.OK)
{
    MessageBox.Show(folderDialog.SelectedPath);
}

效果

Ookii 选择文件夹

贰、参考资料

http://blog.baibaota.com/2062.html
http://www.ookii.org/software/dialogs/
https://blog.csdn.net/xieehu/article/details/125521885

标签:Dialogs,Ookii,WindowsAPICodePack,选择,文件夹,管理器,WinForm
From: https://www.cnblogs.com/minuy/p/16915566.html

相关文章

  • winform程序调取迅雷下载页面 让你的程序更上档次
    日常生活中,我们需要从网络上下载各种文件,这里就要说到下载工具。目前最好用的就要数迅雷了吧,基本一统天下的局面。早前腾讯还有个下载工具,现在也销声匿迹了。传送门winfo......
  • net中winform教程 ListView控件如何实现分组?
    虽然现在winform开发很少使用微软自带的控件,但其中有一个控件还是不错的,它就是ListView控件。操作系统的文件夹页,就是ListView控件的样子,数据展示包括大图标、小图标、列表......
  • net中winform教程 浏览器控件,还是微软的WebView2最好用
    如果想在Winform项目中使用浏览器控件,可能想到的第一个控件就是微软自带的WebBrowser,可这个不争气的家伙,从出现到现在,没有一丁点的升级,即使身为Net程序员,也不得不对它竖起......
  • WPF主窗口在项目子文件夹中如何启动
    在Application类中带上相对路径就行了......
  • python判断文件夹是否存在不存在创建
    (39条消息)python判断目录和文件是否存在,若不存在即创建_仰望神的光的博客-CSDN博客判断目录是否存在importosdirs='/Users/joseph/work/python/'ifnotos.pat......
  • 机器学习基础(4)—— 模型选择之评估方法
    参考:西瓜书第二章李航《统计学习方法(第二版)》第一章现实任务中,往往有多种学习方法可供选择,对于同一个方法,使用不同的参数配置,也可以产生不同的模型。选择哪个模型(算法)、......
  • wpf ListBox循环显示颜色选择框
     数据源list,设置ListBoxItem实现<Page.Resources><StyleTargetType="ListBoxItem"><SetterProperty="Template"><Setter......
  • shell bash判断文件或文件夹是否存在
     #shell判断文件夹是否存在#如果文件夹不存在,创建文件夹if[!-d"/myfolder"];thenmkdir/myfolderfi#shell判断文件,目录是否存在或者具有权限folder="/var/www/"fi......
  • 应该选择网络安全还是程序员?
    很长的时间我都在思考这个问题.,根据自己的经验和朋友们的讨论后得出了一些结论,网络安全这个概念太广,我就以安服/渗透岗作为比较的对象,题主可以参考一下:程序员:优点:1.薪......
  • css复合选择器和子元素选择器
    复合选择器:元素1元素2{样式声明}元素1和元素2中间要有空格子元素选择器:元素1>元素2{样式声明}也可以称作亲儿子选择器,选择某元素的最近一级子元素。......