62,074
社区成员
发帖
与我相关
我的任务
分享
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Web.UI.WebControls;
namespace YYControls
{
/**//// <summary>
/// SmartGridView类的属性部分
/// </summary>
public partial class SmartGridView
{
/**//// <summary>
/// 导出SmartGridView的数据源的数据
/// </summary>
/// <param name="fileName">文件名</param>
/// <param name="exportFormat">导出文件的格式</param>
/// <param name="encoding">编码</param>
public void Export(string fileName, ExportFormat exportFormat, Encoding encoding)
{
DataTable dt = GetDataTable();
Helper.Common.Export(dt, exportFormat, fileName, encoding);
}
/**//// <summary>
/// 导出SmartGridView的数据源的数据
/// </summary>
/// <param name="fileName">文件名</param>
/// <param name="exportFormat">导出文件的格式</param>
public void Export(string fileName, ExportFormat exportFormat)
{
Export(fileName, exportFormat, Encoding.GetEncoding("GB2312"));
}
/**//// <summary>
/// 导出SmartGridView的数据源的数据为Excel
/// </summary>
/// <param name="fileName">文件名</param>
public void Export(string fileName)
{
Export(fileName, ExportFormat.CSV);
}
/**//// <summary>
/// 导出SmartGridView的数据源的数据
/// </summary>
/// <param name="fileName">输出文件名</param>
/// <param name="columnIndexList">导出的列索引数组</param>
/// <param name="exportFormat">导出文件的格式</param>
/// <param name="encoding">编码</param>
public void Export(string fileName,int[] columnIndexList, ExportFormat exportFormat, Encoding encoding)
{
DataTable dt = GetDataTable();
Helper.Common.Export(dt, columnIndexList, exportFormat, fileName, encoding);
}
/**//// <summary>
/// 导出SmartGridView的数据源的数据
/// </summary>
/// <param name="fileName">输出文件名</param>
/// <param name="columnNameList">导出的列的列名数组</param>
/// <param name="exportFormat">导出文件的格式</param>
/// <param name="encoding">编码</param>
public void Export(string fileName, string[] columnNameList, ExportFormat exportFormat, Encoding encoding)
{
DataTable dt = GetDataTable();
Helper.Common.Export(dt, columnNameList, exportFormat, fileName, encoding);
}
/**//// <summary>
/// 导出SmartGridView的数据源的数据
/// </summary>
/// <param name="fileName">输出文件名</param>
/// <param name="columnIndexList">导出的列索引数组</param>
/// <param name="headers">导出的列标题数组</param>
/// <param name="exportFormat">导出文件的格式</param>
/// <param name="encoding">编码</param>
public void Export(string fileName, int[] columnIndexList, string[] headers, ExportFormat exportFormat, Encoding encoding)
{
DataTable dt = GetDataTable();
Helper.Common.Export(dt, columnIndexList, headers, exportFormat, fileName, encoding);
}
/**//// <summary>
/// 导出SmartGridView的数据源的数据
/// </summary>
/// <param name="fileName">输出文件名</param>
/// <param name="columnNameList">导出的列的列名数组</param>
/// <param name="headers">导出的列标题数组</param>
/// <param name="exportFormat">导出文件的格式</param>
/// <param name="encoding">编码</param>
public void Export(string fileName, string[] columnNameList, string[] headers, ExportFormat exportFormat, Encoding encoding)
{
DataTable dt = GetDataTable();
Helper.Common.Export(dt, columnNameList, headers, exportFormat, fileName, encoding);
}
/**//// <summary>
/// 获取数据源(DataTable)
/// </summary>
private DataTable GetDataTable()
{
DataTable dt = null;
if (this._dataSourceObject is DataTable)
dt = (DataTable)this._dataSourceObject;
else if (this._dataSourceObject is DataSet)
dt = ((DataSet)this._dataSourceObject).Tables[0];
else
throw new InvalidCastException("若要导出SmartGridView,应保证其数据源为DataTable或DataSet类型");
if (dt == null)
throw new ArgumentNullException("数据源", "数据源不能为NULL");
return dt;
}
}
}
GridView gv = new GridView();
DataTable dt = new DataTable();
dt.Columns.Add(new DataColumn());
gv.DataSource = dt;
DataTable dt2 = (DataTable)gv.DataSource;