• dev gridcontrol 导出到excel


            /// <summary>
            /// 保存Excel文件,.xlsx
            /// </summary>
            /// <param name="gridView">数据源</param>
            /// <param name="fileNameOrSheetName">保存的文件名或工作名</param>
            public static void ExportExcel(DevExpress.XtraGrid.Views.Grid.GridView gridView, string fileNameOrSheetName)
            {
                if (gridView.RowCount > 0)
                {
                    var export = true;
                    SaveFileDialog saveFileDialog = new SaveFileDialog();
                    saveFileDialog.Title = "导出Excel";
                    saveFileDialog.Filter = "Excel文件(*.xlsx)|*.xlsx";
                    saveFileDialog.FileName = fileNameOrSheetName + "_" + DateTime.Now.ToString("yyyyMMddhhmmss");
    
                    if (saveFileDialog.ShowDialog() == DialogResult.OK)
                    {
                        DevExpress.XtraPrinting.XlsxExportOptionsEx op = new DevExpress.XtraPrinting.XlsxExportOptionsEx();
    
                        op.ExportType = DevExpress.Export.ExportType.WYSIWYG;//所见即所得
                        op.ExportMode = DevExpress.XtraPrinting.XlsxExportMode.SingleFile;//指定XLSX导出模式-->单一文件
                        op.TextExportMode = DevExpress.XtraPrinting.TextExportMode.Value;//指定是否在导出的XLS(或XLSX)文档中使用绑定数据集中的数据字段的格式-->使用与原始文档中相同的格式
                        op.SheetName = fileNameOrSheetName;//工作簿名称
    
                        gridView.OptionsPrint.PrintHeader = true;//是否打印行头
                        gridView.OptionsPrint.AutoWidth = false;//获取或设置输出/导出输出中的列的宽度是否会自动改变,以便视图与页面宽度相匹配。
                        gridView.OptionsPrint.AllowCancelPrintExport = true;  //获取或设置打印/导出进度窗口是否包含一个取消按钮,这允许终端用户取消当前的打印/导出操作。
                        gridView.AppearancePrint.HeaderPanel.Font = new System.Drawing.Font("微软雅黑", 10);
                        gridView.AppearancePrint.Row.Font = new System.Drawing.Font("微软雅黑", 10);
                        gridView.AppearancePrint.FooterPanel.Font = new System.Drawing.Font("微软雅黑", 10);
    
                        try
                        {
                            gridView.ExportToXlsx(saveFileDialog.FileName, op);
                        }
                        catch (Exception ex)
                        {
                            DevExpress.XtraEditors.XtraMessageBox.Show(ex.Message);
                            export = false;
                        }
                        if (export)
                        {
                            if (DevExpress.XtraEditors.XtraMessageBox.Show("导出成功,是否打开文件?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.Yes)
                                System.Diagnostics.Process.Start(saveFileDialog.FileName);
                        }
                    }
                }
                else XtraMessageBox.Show("无数据!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
            }
            /// <summary>
            /// 保存Excel文件,.xls
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            public void ExportExcel2(DevExpress.XtraGrid.GridControl gridcontrol, string fileNameOrSheetName)//(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
            {
                if (gridcontrol.MainView.RowCount > 0)
                {
                    var export = true;
                    SaveFileDialog saveFileDialog = new SaveFileDialog();
                    saveFileDialog.Title = "导出Excel";
                    saveFileDialog.Filter = "Excel文件(*.xls)|*.xls";
                    saveFileDialog.FileName = fileNameOrSheetName + "_" + DateTime.Now.ToString("yyyyMMddhhmmss");
                    if (saveFileDialog.ShowDialog(this) == DialogResult.OK)
                    {
                        //DevExpress.XtraPrinting.XlsExportOptions options = new DevExpress.XtraPrinting.XlsExportOptions();
                        //options.ExportMode = XlsExportMode.SingleFile;//指定XLSX导出模式-->单一文件
                        //options.TextExportMode = DevExpress.XtraPrinting.TextExportMode.Value;//指定是否在导出的XLS(或XLSX)文档中使用绑定数据集中的数据字段的格式-->使用与原始文档中相同的格式
                        //options.SheetName = fileNameOrSheetName;//工作簿名称
                        try
                        {
                            gridcontrol.ExportToXls(saveFileDialog.FileName);
                        }
                        catch (Exception ex)
                        {
                            DevExpress.XtraEditors.XtraMessageBox.Show(ex.Message);
                            export = false;
                        }
                        if (export)
                        {
                            if (DevExpress.XtraEditors.XtraMessageBox.Show("导出成功,是否打开文件?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.Yes)
                                System.Diagnostics.Process.Start(saveFileDialog.FileName);
                        }
                    }
                }
                else XtraMessageBox.Show("无数据!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
            }

    其它相关链接参考:

    【CSDN博客】 php 导出excel 进度条显示
    http://blog.csdn.net/xiaowan206/article/details/78518794
    【CSDN下载】 Excel 批量上传 批量 处理 进度条
    http://download.csdn.net/download/mike0906/6559861
    【CSDN下载】 Excel导入DataGridView和SQL 带进度条
    http://download.csdn.net/download/oumigai/9922604
    【CSDN下载】 (兼容XP系统)多线程异步编程带进度条的利用Excel模版报表转换
    http://download.csdn.net/download/yangyanghaoran/4574325
    【CSDN博客】 VBA 两个Excel对比 操作(带进度条)
    http://blog.csdn.net/xiaoqingwuku/article/details/12966805
    【CSDN博客】 在ASP.NET中将Excel文件中数据导入数据库并显示进度条
    http://blog.csdn.net/jasonwu_bj/article/details/6112146
    【CSDN博客】 (转).net中导入excel文件显示进度条
    http://blog.csdn.net/wanderball/article/details/7733654
    【CSDN博客】 .net导入Excel 并显示进度条
    http://blog.csdn.net/yelin042/article/details/76602429
    【CSDN下载】 duilib 做的Demo ,支持进度条,以及动态修改xml 的内容
    http://download.csdn.net/download/cnsqq_mapan/5699847
    【CSDN博客】 ios 使用NSURlSession 下载文件并且使用进度条进行文件下载进度读取以及打开附件(word,excel,ppt,pdf)显
    http://blog.csdn.net/georgehenrywilliam/article/details/53374307

    DevExpress GridControl使用经验总结:
    http://www.360doc.com/content/14/0429/15/10893884_373218734.shtml

  • 相关阅读:
    Ubuntu 14.04 卸载通过源码安装的库
    Ubuntu 14.04 indigo 相关依赖
    Ubuntu 14.04 indigo 安装 cartographer 1.0.0
    Ubuntu 14.04 改变文件或者文件夹的拥有者
    安装cartographer遇到Unrecognized syntax identifier "proto3". This parser only recognizes "proto2"问题
    Unrecognized syntax identifier "proto3". This parser only recognizes "proto2". ”问题解决方法
    查看所有用户组,用户名
    1卸载ROS
    Ubuntu14.04 软件安装卸载
    Ubuntu14.04系统显示器不自动休眠修改
  • 原文地址:https://www.cnblogs.com/xifengyeluo/p/8193739.html
Copyright © 2020-2023  润新知