export Excel

public void ExportExcel(System.Web.UI.Page page, DataTable dt,string tablename)
{
page.Response.Clear();
page.Response.Buffer
= true;
page.Response.HeaderEncoding
= System.Text.Encoding.GetEncoding("utf-8");
page.Response.ContentEncoding
= System.Text.Encoding.GetEncoding("utf-8");
page.Response.ContentType
= "application/ms-excel";
page.Response.Charset
= "";
page.EnableViewState
= false;
System.Globalization.CultureInfo myCItrad
= new System.Globalization.CultureInfo("zh-CN", true);
System.IO.StringWriter oStringWriter
= new System.IO.StringWriter(myCItrad);
System.Web.UI.HtmlTextWriter oHtmlTextWriter
= new System.Web.UI.HtmlTextWriter(oStringWriter);
DataGrid DataGrid1
= new DataGrid();
DataGrid1.ItemDataBound
+= new DataGridItemEventHandler(DataGrid_ItemDataBound);
DataGrid1.DataSource
= dt;
DataGrid1.DataBind();
DataGrid1.RenderControl(oHtmlTextWriter);
HttpContext.Current.Response.AddHeader(
"content-disposition", "attachment;filename=" + tablename + ".xls");
page.Response.Write(oStringWriter.ToString());
page.Response.Buffer
= false;
page.Response.Flush();
page.Response.End();
}

protected void DataGrid_ItemDataBound(object sender, DataGridItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
e.Item.Cells[
0].Attributes.Add("style", "vnd.ms-excel.numberformat:@"); //文本
//e.Item.Cells[0].Attributes.Add("style", "background-color:Gray;Height:25;");

e.Item.Cells[
12].Attributes.Add("style", "vnd.ms-excel.numberformat:@");

string[] sfzhyxmc = GetSfzhYxmc(e.Item.Cells[0].Text).Split(':');
e.Item.Cells[
19].Text = sfzhyxmc[0];
e.Item.Cells[
19].Attributes.Add("style", "vnd.ms-excel.numberformat:@"); //文本
e.Item.Cells[4].Text = sfzhyxmc[1];

//e.Item.Cells[0].Width = 80;
//e.Item.Cells[0].Style[HtmlTextWriterStyle.Color] = "red";
//e.Item.Cells[2].Attributes.Add("style", "vnd.ms-excel.numberformat:@");
//e.Item.Cells[4].Attributes.Add("style", "vnd.ms-excel.numberformat:@");
//e.Item.Cells[6].Attributes.Add("style", "vnd.ms-excel.numberformat:@");
//e.Item.Cells[7].Attributes.Add("style", "vnd.ms-excel.numberformat:#,##0.00");
//e.Item.Cells[12].Attributes.Add("style", "vnd.ms-excel.numberformat:#,##0.00");
}
}

 

posted on 2010-12-15 10:39  牛虻  阅读(331)  评论(0)    收藏  举报

导航