DEV GridControl导入导出Excel文件 - 导出多表到一个sheet页

using DevExpress.XtraLayout;
using DevExpress.XtraPrinting;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace JCZHTS.Common.UI
{
public class ExportUtil
{
public static void exportGridControl(DevExpress.XtraGrid.GridControl gridcontrol)
{
SaveFileDialog frm = new SaveFileDialog();
frm.Filter = "(*.xlsx)|*.xlsx";
frm.FileName = "新文件" + System.DateTime.Now.ToString("yyyyMMddHHmmss");
if (frm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
if (frm.CheckFileExists)
{
if (!(MessageBox.Show("该文件已经存在是否覆盖该文件?", "温馨提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)) return;
}
string fileName = frm.FileName;
//XlsExportOptions options = new XlsExportOptions();
XlsxExportOptions options = new XlsxExportOptions();
//options.TextExportMode = TextExportMode.Text;
options.TextExportMode = TextExportMode.Value;
options.RawDataMode = false;
//gridcontrol.ExportToXls(fileName, options);
gridcontrol.ExportToXlsx(fileName, options);
if ((MessageBox.Show("是否打开该文件?", "温馨提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes))
{
System.Diagnostics.Process.Start(fileName);
}
}
}


public static void exportGridControl(DevExpress.XtraGrid.GridControl gridcontrol, string fileName)
{
SaveFileDialog frm = new SaveFileDialog();
frm.Filter = "(*.xls)|*.xls";
frm.FileName = fileName;
if (frm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
if (frm.CheckFileExists)
{
if (!(MessageBox.Show("该文件已经存在是否覆盖该文件?", "温馨提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)) return;
}
XlsExportOptions options = new XlsExportOptions();
//options.TextExportMode = TextExportMode.Text;
options.TextExportMode = TextExportMode.Value;
options.RawDataMode = false;
gridcontrol.ExportToXls(frm.FileName, options);
if ((MessageBox.Show("是否打开该文件?", "温馨提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes))
{
System.Diagnostics.Process.Start(frm.FileName);
}
}
}

/// <summary>
/// 导出为xlsx
/// </summary>
/// <param name="gridcontrol"></param>
/// <param name="fileName"></param>
public static void exportGridControlToxlsx(DevExpress.XtraGrid.GridControl gridcontrol)
{
SaveFileDialog frm = new SaveFileDialog();
frm.Filter = "(*.xlsx)|*.xlsx";
frm.FileName = "新文件" + System.DateTime.Now.ToString("yyyyMMddHHmmss");
if (frm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
if (frm.CheckFileExists)
{
if (!(MessageBox.Show("该文件已经存在是否覆盖该文件?", "温馨提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)) return;
}
string fileName = frm.FileName;
XlsxExportOptions options = new XlsxExportOptions();
//options.TextExportMode = TextExportMode.Text;
options.TextExportMode = TextExportMode.Value;
options.RawDataMode = false;
// gridcontrol.ExportToXls(fileName, options);
gridcontrol.ExportToXlsx(fileName, options);
if ((MessageBox.Show("是否打开该文件?", "温馨提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes))
{
System.Diagnostics.Process.Start(fileName);
}
}
}


public static string exportLayoutControlToPdf(LayoutControl layoutControl, bool open)
{
string fileName = string.Empty;
SaveFileDialog frm = new SaveFileDialog();
frm.Filter = "(*.pdf)|*.pdf";
frm.FileName = "新文件" + System.DateTime.Now.ToString("yyyyMMddHHmmss");
if (frm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
if (frm.CheckFileExists)
{
if (!(MessageBox.Show("该文件已经存在是否覆盖该文件?", "温馨提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes))
return fileName;
}
fileName = frm.FileName;
layoutControl.ExportToPdf(fileName);
if (open == true && (MessageBox.Show("是否打开该文件?", "温馨提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes))
{
System.Diagnostics.Process.Start(fileName);
}
}
return fileName;
}

public static string exportLayoutControlToExistPdf(LayoutControl layoutControl, bool open, string fileName)
{
try
{
layoutControl.ExportToPdf(fileName);
if (open == true && (MessageBox.Show("是否打开该文件?", "温馨提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes))
{
System.Diagnostics.Process.Start(fileName);
}
}
catch { }
return fileName;
}


public static string exportLayoutControlToXls(LayoutControl layoutControl, bool open)
{
string fileName = string.Empty;
SaveFileDialog frm = new SaveFileDialog();
frm.Filter = "(*.xls)|*.xls";
frm.FileName = "新文件" + System.DateTime.Now.ToString("yyyyMMddHHmmss");
if (frm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
if (frm.CheckFileExists)
{
if (!(MessageBox.Show("该文件已经存在是否覆盖该文件?", "温馨提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes))
return fileName;
}
fileName = frm.FileName;
XlsExportOptions options = new XlsExportOptions();
options.TextExportMode = TextExportMode.Text;
//options.TextExportMode = TextExportMode.Value;
options.RawDataMode = false;
layoutControl.ExportToXls(fileName, options);
if (open == true && (MessageBox.Show("是否打开该文件?", "温馨提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes))
{
System.Diagnostics.Process.Start(fileName);
}
}
return fileName;
}
}
}



如果您觉得阅读本文对您有帮助,请点一下“推荐”按钮,您的“推荐”将是我最大的写作动力!欢迎各位转载,但是未经作者本人同意,转载文章之后必须在文章页面明显位置给出作者和原文连接,否则保留追究法律责任的权利。
posted @   君莫笑我十年游  阅读(716)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示