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

C# Winform Datagridview查询项目实例

        在项目中,我们经常要遇到查询和展示内容,常用的做法是通过文本框,时间控件,按键和datagridview查询和展示内容。下面是一个常见的综合实例,并支持Excel(csv)导入导出,表格列动态调整的功能。

实例代码链接:https://download.csdn.net/download/lvxingzhe3/89436315

Excel(csv)导入到Datagridview:

        /// <summary>/// 将csv文件数据导入datagridview/// </summary>/// <param name="csvPath"></param>/// <returns></returns>public static void ImportCSV(DataGridView dgv){string filePath;OpenFileDialog openFileDialog = new OpenFileDialog();openFileDialog.Filter = "CSV files (*.csv)|*.csv";openFileDialog.FilterIndex = 0;if (openFileDialog.ShowDialog() == DialogResult.OK){filePath = openFileDialog.FileName;}else{return;}DataTable dt = new DataTable();using (StreamReader sr = new StreamReader(filePath)){string[] headers = sr.ReadLine().Split(',');string headerValue = null;foreach (string header in headers){headerValue = header.Replace("\"", "");dt.Columns.Add(headerValue);}while (!sr.EndOfStream){string[] rows = sr.ReadLine().Split(',');DataRow dr = dt.NewRow();for (int i = 0; i < headers.Length; i++){dr[i] = rows[i].Replace("\"", "");}dt.Rows.Add(dr);}}dgv.DataSource = dt;}

Datagridview导出到excel(csv)

        /// <summary>/// DateGridView导出到csv格式的Excel,通用  /// </summary>/// <param name="dgv"></param>public static void ExportToCSV(DataGridView dgv){string filePath;SaveFileDialog saveFileDialog = new SaveFileDialog();saveFileDialog.Filter = "CSV files (*.csv)|*.csv";saveFileDialog.FilterIndex = 0;if (saveFileDialog.ShowDialog() == DialogResult.OK){filePath = saveFileDialog.FileName;}else{return;}using (StreamWriter sw = new StreamWriter(filePath)){// 写入列标题string headers = string.Join(",", dgv.Columns.Cast<DataGridViewColumn>().Select(column => "\"" + column.HeaderText + "\"").ToArray());sw.WriteLine(headers);// 写入数据行foreach (DataGridViewRow row in dgv.Rows){string line = string.Join(",", row.Cells.Cast<DataGridViewCell>().Select(cell => "\"" + cell.Value?.ToString().Replace("\"", "\"\"") + "\"").ToArray());sw.WriteLine(line);}}}

 实例代码链接:https://download.csdn.net/download/lvxingzhe3/89436315

相关文章:

  • vcpkg安装g2o,提示找不到cs.h,debug模式运行提示找不到libcxsparse.dll
  • 注解详解系列 - @Conditional:条件化配置的利器
  • ai assistant激活成功后,如何使用
  • React的Redux的状态管理
  • 如何处理Android应用程序的内存泄漏
  • 聊聊 Mybatis 动态 SQL
  • 【推荐100个unity插件之21】unity实现多语言切换功能——Localization插件的使用
  • 命名冲突常见的领域
  • 红队内网攻防渗透:内网渗透之内网对抗:隧道技术篇防火墙组策略ICMPDNSSMB协议出网判断C2上线解决方案
  • 利用第三方服务对目标进行被动信息收集防止被发现(web安全白帽子)
  • 剪画音频提取:周杰伦音乐自由听,谁还付费听歌呀!
  • 6G时代,即将来临!
  • 课程管理系统
  • Stable Diffusion部署教程,开启你的AI绘图之路
  • Qt项目天气预报(4) - json 数据解析
  • Android 控件背景颜色处理
  • CSS3 变换
  • CSS盒模型深入
  • iOS | NSProxy
  • Java读取Properties文件的六种方法
  • JAVA多线程机制解析-volatilesynchronized
  • leetcode378. Kth Smallest Element in a Sorted Matrix
  • Material Design
  • MobX
  • niucms就是以城市为分割单位,在上面 小区/乡村/同城论坛+58+团购
  • PHP面试之三:MySQL数据库
  • QQ浏览器x5内核的兼容性问题
  • vagrant 添加本地 box 安装 laravel homestead
  • vuex 笔记整理
  • windows下如何用phpstorm同步测试服务器
  • 官方解决所有 npm 全局安装权限问题
  • 跨域
  • 买一台 iPhone X,还是创建一家未来的独角兽?
  • 一个JAVA程序员成长之路分享
  • # 服务治理中间件详解:Spring Cloud与Dubbo
  • # 数论-逆元
  • #HarmonyOS:基础语法
  • #pragma data_seg 共享数据区(转)
  • #前后端分离# 头条发布系统
  • %check_box% in rails :coditions={:has_many , :through}
  • (2015)JS ES6 必知的十个 特性
  • (附源码)计算机毕业设计ssm本地美食推荐平台
  • (几何:六边形面积)编写程序,提示用户输入六边形的边长,然后显示它的面积。
  • (经验分享)作为一名普通本科计算机专业学生,我大学四年到底走了多少弯路
  • (三)Kafka 监控之 Streams 监控(Streams Monitoring)和其他
  • (顺序)容器的好伴侣 --- 容器适配器
  • *算法训练(leetcode)第四十五天 | 101. 孤岛的总面积、102. 沉没孤岛、103. 水流问题、104. 建造最大岛屿
  • .NET 4.0网络开发入门之旅-- 我在“网” 中央(下)
  • .net SqlSugarHelper
  • .NET/C# 检测电脑上安装的 .NET Framework 的版本
  • .net利用SQLBulkCopy进行数据库之间的大批量数据传递
  • .NET设计模式(2):单件模式(Singleton Pattern)
  • .NET中 MVC 工厂模式浅析
  • ??eclipse的安装配置问题!??
  • @font-face 用字体画图标