DevExpress 利用动态创建GridControl导出Excel,并不显示在界面上

2024-06-23 11:18

本文主要是介绍DevExpress 利用动态创建GridControl导出Excel,并不显示在界面上,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

正常情况下,GridControl显示在界面上直接导出数据到excel是没问题的,
在动态创建的时候如果不显示在界面上并不会把数据导到excel,一般的解决方法都是先添加导出后再隐藏或者释放掉,这种方法虽然如愿导出了数据,但是,想一想,这不是很多余么。
大伙有没有想过为什么显示到界面的时候才能导出数据内容呢?其实原理很简单,当对GridControl绑定数据的时候,就会在Form上实例化了 BindingContext对象,Ok知道这个情况,这样问题就很好解决了,只要在代码中直接实例化这个对象不就不需要到Form上自动实例化了么,

利用这个原理写了以下方法

/// <summary>/// 通过GridControl导出Excel/// </summary>/// <param name="dt"></param>/// <param name="fileName"></param>public static void ExportByGridControl(DataTable dt,string fileName){using (DevExpress.Utils.WaitDialogForm dlg = new DevExpress.Utils.WaitDialogForm("请稍等", "保存中...", new Size(100, 50))){try{GridControl grid = new GridControl();grid.BindingContext = new BindingContext();//绑定内容实例,否则需要在界面显示才会自动实例GridView view = new GridView(grid);grid.MainView = view;grid.DataSource = dt;grid.ForceInitialize();//强制初始化grid.ExportToXlsx(fileName);if(DialogResult.Yes== XtraMessageBox.Show("导出成功,是否打开文件","提示",MessageBoxButtons.YesNo,MessageBoxIcon.Information))System.Diagnostics.Process.Start(fileName);}catch(Exception ex){XtraMessageBox.Show("导出失败:" + ex.Message);}}}void MethodTest(){DataTable dt = new DataTable();dt.Columns.Add("Name");dt.Rows.Add("涛神厉害");dt.Rows.Add("涛神牛逼");ExportByGridControl(dt, "E:\\涛神.xlsx");}


这篇关于DevExpress 利用动态创建GridControl导出Excel,并不显示在界面上的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1087000

相关文章

C#如何动态创建Label,及动态label事件

《C#如何动态创建Label,及动态label事件》:本文主要介绍C#如何动态创建Label,及动态label事件,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录C#如何动态创建Label,及动态label事件第一点:switch中的生成我们的label事件接着,

java中使用POI生成Excel并导出过程

《java中使用POI生成Excel并导出过程》:本文主要介绍java中使用POI生成Excel并导出过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录需求说明及实现方式需求完成通用代码版本1版本2结果展示type参数为atype参数为b总结注:本文章中代码均为

利用Python开发Markdown表格结构转换为Excel工具

《利用Python开发Markdown表格结构转换为Excel工具》在数据管理和文档编写过程中,我们经常使用Markdown来记录表格数据,但它没有Excel使用方便,所以本文将使用Python编写一... 目录1.完整代码2. 项目概述3. 代码解析3.1 依赖库3.2 GUI 设计3.3 解析 Mark

Python实现将MySQL中所有表的数据都导出为CSV文件并压缩

《Python实现将MySQL中所有表的数据都导出为CSV文件并压缩》这篇文章主要为大家详细介绍了如何使用Python将MySQL数据库中所有表的数据都导出为CSV文件到一个目录,并压缩为zip文件到... python将mysql数据库中所有表的数据都导出为CSV文件到一个目录,并压缩为zip文件到另一个

Java利用poi实现word表格转excel

《Java利用poi实现word表格转excel》这篇文章主要为大家详细介绍了Java如何利用poi实现word表格转excel,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 一、每行对象类需要针对不同的表格进行对应的创建。package org.example.wordToEx

利用Python实现添加或读取Excel公式

《利用Python实现添加或读取Excel公式》Excel公式是数据处理的核心工具,从简单的加减运算到复杂的逻辑判断,掌握基础语法是高效工作的起点,下面我们就来看看如何使用Python进行Excel公... 目录python Excel 库安装Python 在 Excel 中添加公式/函数Python 读取

基于Python开发批量提取Excel图片的小工具

《基于Python开发批量提取Excel图片的小工具》这篇文章主要为大家详细介绍了如何使用Python中的openpyxl库开发一个小工具,可以实现批量提取Excel图片,有需要的小伙伴可以参考一下... 目前有一个需求,就是批量读取当前目录下所有文件夹里的Excel文件,去获取出Excel文件中的图片,并

Java导入、导出excel用法步骤保姆级教程(附封装好的工具类)

《Java导入、导出excel用法步骤保姆级教程(附封装好的工具类)》:本文主要介绍Java导入、导出excel的相关资料,讲解了使用Java和ApachePOI库将数据导出为Excel文件,包括... 目录前言一、引入Apache POI依赖二、用法&步骤2.1 创建Excel的元素2.3 样式和字体2.

使用EasyExcel实现简单的Excel表格解析操作

《使用EasyExcel实现简单的Excel表格解析操作》:本文主要介绍如何使用EasyExcel完成简单的表格解析操作,同时实现了大量数据情况下数据的分次批量入库,并记录每条数据入库的状态,感兴... 目录前言固定模板及表数据格式的解析实现Excel模板内容对应的实体类实现AnalysisEventLis

python多种数据类型输出为Excel文件

《python多种数据类型输出为Excel文件》本文主要介绍了将Python中的列表、元组、字典和集合等数据类型输出到Excel文件中,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参... 目录一.列表List二.字典dict三.集合set四.元组tuplepython中的列表、元组、字典