当前位置: 首页 > news >正文

【33】C#实战篇——点击按钮弹出指定路径对话框,选择指定类型文件;;;文件过滤器显示指定的一种文件,几种类型文件 同时显示

文章目录

  • 1文件过滤器
    • 1.1 显示指定的一种文件
    • 1.2 几种类型文件 同时显示
  • 2 创建文件选择我对话框
    • 2.1 弹出 默认 对话框
    • 2.2 弹出 指定路径 对话框
  • 3 弹出对话框 选择文件

点击按钮后,弹出的页面能直接跳转到当前运行目录下的.\config文件夹子,选择配置文件,并将选中的文件名显示在TexBot文本框中;

默认显示的配置文件有.ini,.dat,.csv文件。

TexBot文本框 :StartItemTextBox.Text

1文件过滤器

	文件过滤器用于 默认显示,需要的文件,其他不需要的文件不显示。

1.1 显示指定的一种文件

 // 设置文件过滤器,显示 .ini, .dat,.bat 和 .csv 文件 (只显示其中一种,或的关系)openFileDialog.Filter = "INI files (*.ini)|*.ini|DAT files (*.dat)|*.dat|BAT files (*.bat)|*.bat|CSV files (*.csv)|*.csv|All files (*.*)|*.*";

在这里插入图片描述

1.2 几种类型文件 同时显示

////设置文件过滤器,显示.ini, .dat,.bat 和 .csv 文件 (需要的几种类型文件 同时显示)
openFileDialog.Filter = "Configuration files (*.ini;*.dat;*.bat;*.csv)|*.ini;*.dat;*.bat;*.csv|All files (*.*)|*.*";

在这里插入图片描述

2 创建文件选择我对话框

2.1 弹出 默认 对话框

 // 创建一个文件选择对话框OpenFileDialog openFileDialog = new OpenFileDialog();
  • 目的: 这段代码仅创建一个文件选择对话框。
  • 功能: 没有设置任何初始目录,因此对话框会打开在默认目录,通常是用户的“文档”或最近使用的文件夹。
  • 用户体验: 用户需要手动浏览到需要的文件夹,这可能会降低效率。

2.2 弹出 指定路径 对话框

为了更方便,有时希望点击该按钮后,弹出的页面能跳转到指定目录下,这样更方便 选择文件。

下面弹出的页面能直接跳转到当前运行目录下的.\config文件夹下

 // 创建一个文件选择对话框OpenFileDialog openFileDialog = new OpenFileDialog();// 使用当前运行目录下的 config 文件夹string configFolderPath = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "config");// 设置对话框的初始目录为 config 文件夹openFileDialog.InitialDirectory = configFolderPath;
  • 目的:这段代码的目的是创建一个文件选择对话框,并将其初始目录设置为当前运行目录下的 config 文件夹。
  • 功能:通过 System.IO.Path.Combine 方法构建路径,确保在不同操作系统上路径格式正确。
  • 用户体验:当用户打开对话框时,会直接跳转到 config 文件夹,便于快速选择配置文件。

3 弹出对话框 选择文件

         private void SelectStartItem_Click(object sender, RoutedEventArgs e){// 创建一个文件选择对话框OpenFileDialog openFileDialog = new OpenFileDialog();// 使用当前运行目录下的 config 文件夹string configFolderPath = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "config");// 设置对话框的初始目录为 config 文件夹openFileDialog.InitialDirectory = configFolderPath;// 设置文件过滤器,显示 .ini, .dat,.bat 和 .csv 文件openFileDialog.Filter = "Configuration files (*.ini;*.dat;*.bat;*.csv)|*.ini;*.dat;*.bat;*.csv|All files (*.*)|*.*";// 显示对话框并检查是否选择了文件bool? result = openFileDialog.ShowDialog();// 检查是否选择了文件if (result == true){// 获取选中的文件名并显示在文本框中StartItemTextBox.Text = System.IO.Path.GetFileName(openFileDialog.FileName);//将选中的测试项写入配置文件;// 写入 [SeleStartItem] 下的 StartItem 键值m_iniHelper.IniWriteValue("SeleStartItem", "StartItem", StartItemTextBox.Text);}else{// 如果未选择文件,可以设置默认值或不进行处理StartItemTextBox.Text = "No file selected.";}}

在这里插入图片描述

http://www.lryc.cn/news/615377.html

相关文章:

  • 云渲染的未来已来:渲酷云如何重新定义数字内容生产效率
  • 卫星遥感与AI大模型
  • 疏老师-python训练营-Day40训练和测试的规范写法
  • ADB(Android Debug Bridge)—— Android调试桥
  • PAT 1052 Linked List Sorting
  • java之父-新特性
  • React中实现完整的登录鉴权与权限控制系统
  • 算法题(183):质量检测
  • 【递归、搜索和回溯】FloodFill 算法介绍及相关例题
  • 比亚迪第五代DM技术:AI能耗管理的深度解析与实测验证
  • ToB大型软件可靠性测试方案
  • Dell PowerEdge: Servers by generation (按代系划分的服务器)
  • imx6ull-驱动开发篇15——linux自旋锁
  • Orange的运维学习日记--36.NFS详解与服务部署
  • 回答“http协议 ,js组件化,工程化, seo优化策略 ,针对不同平台终端适配 web标注和兼容性”
  • Vue3的简单学习
  • Vuex 数据共享
  • JVM常用参数有哪些?
  • 06.【数据结构-C语言】队列(先进先出,队列实现:入队列、出队列、获取队头or队尾元素,队列实现代码,队列相关题目)
  • idea设置注释--带日期和作者和描述
  • 排序概念以及插入排序
  • Oracle字段操作
  • (nice!!!)(LeetCode 面试经典 150 题) 146. LRU 缓存 (哈希表+双向链表)
  • 在 Vue 中动态引入SVG图标的实现方案
  • STM32 外设驱动模块四:光敏电阻(LDR) 模块
  • 後端開發技術教學(四) 數據交互延伸
  • 2025年渗透测试面试题总结-09(题目+回答)
  • 力扣(轮转数组)
  • 欧拉公式的意义
  • gpt-oss 全量技术解读