using System; using System.Data; using System.Collections; using System.Web; using System.Text; namespace ZXDT.Common.Office { /// /// Excel表单类 /// public class Worksheet { private string sheetname = Guid.NewGuid().ToString().Replace("-", ""); /// /// 表单名称 /// public string SheetName { set { sheetname = value.Replace(">", "").Replace("<", "").Replace("\"", "").Replace("&", "").Replace("'", ""); } } private bool columnfilter = false; /// /// 是否自动条件过滤 /// 注意:如果设置不导出标题行,此属性无效! /// public bool ColumnFilter { set { columnfilter = value; } get { if (!writeheaders) return false; else return columnfilter; } } private DataTable datasource = new DataTable(); public DataTable DataSource { set { datasource = value; } } private bool writeheaders = true; public bool WriteHeaders { set { writeheaders = value; } } private ArrayList columnname = new ArrayList(); public ArrayList ColumnName { set { columnname = value; } get { if (columnname.Count > 0) return columnname; else { ArrayList temp = new ArrayList(); foreach (DataColumn dc in datasource.Columns) { temp.Add(dc.ColumnName); } return temp; } } } public void OutPut() { int columscnt = datasource.Columns.Count; int rowcnt = datasource.Rows.Count + 1; HttpResponse Response = HttpContext.Current.Response; Response.Write(""); if (!ColumnFilter) { #region Response.Write(""); if (writeheaders) { Response.Write(""); foreach (object o in ColumnName)// { Response.Write(""); } Response.Write(""); } foreach (DataRow dr in datasource.Rows) { Response.Write(""); for (int i = 0; i < datasource.Columns.Count; i++) { Response.Write(""); } Response.Write(""); } Response.Write("
"); #endregion } else { #region Response.Write(""); Response.Write(""); if (writeheaders) { Response.Write(""); foreach (object o in ColumnName) { Response.Write(""); } Response.Write(""); } foreach (DataRow dr in datasource.Rows) { Response.Write(""); for (int i = 0; i < datasource.Columns.Count; i++) { Response.Write(""); } Response.Write(""); } Response.Write("
"); Response.Write(""); #endregion } } } }