'把DataGrid输出到Excel文件
'调用的方法:DataGridToExcel(Page, DataGrid1, filename)
Public Function DataGridToExcel(ByRef Page As System.Web.UI.Page, ByVal MyDataGrid As System.Web.UI.WebControls.DataGrid, ByVal FileName As String) As String
Dim resp As HttpResponse
resp = Page.Response
resp.ContentEncoding = System.Text.Encoding.GetEncoding("utf-7")
resp.ContentType = "application/vnd.ms-excel"
resp.AddHeader("Content-Disposition", "attachment; filename=" + FileName)
resp.Charset = "gb2312"
Dim tw As New System.IO.StringWriter
Dim hw As New System.Web.UI.HtmlTextWriter(tw)
' Get the HTML for the control.
MyDataGrid.RenderControl(hw)
' Write the HTML back to the browser.
resp.Write(tw.ToString())
' End the response.
resp.End()
End Function
'存在分页时的做法
Sub Button1_Click(sender As Object, e As System.EventArgs)
MyDataGrid.AllowPaging = "false"
BindGrid()
MyDataGrid.SelectedItemStyle.BackColor=Color.white
MyDataGrid.AlternatingItemStyle.BackColor=Color.white
MyDataGrid.ItemStyle.BackColor=Color.white
MyDataGrid.HeaderStyle.BackColor=Color.white
MyDataGrid.HeaderStyle.ForeColor=Color.red
HttpContext.Current.Response.AppendHeader("Content-Disposition","attachment;filename=Filel.xls")
dim resp as HttpResponse = Page.Response
resp.ContentEncoding = System.Text.Encoding.GetEncoding("Big5")
Response.ContentType = "application/vnd.ms-excel"
Response.Charset = ""
Me.EnableViewState = False
Dim tw As New System.IO.StringWriter()
Dim hw As New System.Web.UI.HtmlTextWriter(tw)
MyDataGrid.RenderControl(hw)
Response.Write(tw.ToString())
Response.End()
MyDataGrid.AllowPaging = "true"
BindGrid()
End Sub
'调用的方法:DataGridToExcel(Page, DataGrid1, filename)
Public Function DataGridToExcel(ByRef Page As System.Web.UI.Page, ByVal MyDataGrid As System.Web.UI.WebControls.DataGrid, ByVal FileName As String) As String
Dim resp As HttpResponse
resp = Page.Response
resp.ContentEncoding = System.Text.Encoding.GetEncoding("utf-7")
resp.ContentType = "application/vnd.ms-excel"
resp.AddHeader("Content-Disposition", "attachment; filename=" + FileName)
resp.Charset = "gb2312"
Dim tw As New System.IO.StringWriter
Dim hw As New System.Web.UI.HtmlTextWriter(tw)
' Get the HTML for the control.
MyDataGrid.RenderControl(hw)
' Write the HTML back to the browser.
resp.Write(tw.ToString())
' End the response.
resp.End()
End Function
'存在分页时的做法
Sub Button1_Click(sender As Object, e As System.EventArgs)
MyDataGrid.AllowPaging = "false"
BindGrid()
MyDataGrid.SelectedItemStyle.BackColor=Color.white
MyDataGrid.AlternatingItemStyle.BackColor=Color.white
MyDataGrid.ItemStyle.BackColor=Color.white
MyDataGrid.HeaderStyle.BackColor=Color.white
MyDataGrid.HeaderStyle.ForeColor=Color.red
HttpContext.Current.Response.AppendHeader("Content-Disposition","attachment;filename=Filel.xls")
dim resp as HttpResponse = Page.Response
resp.ContentEncoding = System.Text.Encoding.GetEncoding("Big5")
Response.ContentType = "application/vnd.ms-excel"
Response.Charset = ""
Me.EnableViewState = False
Dim tw As New System.IO.StringWriter()
Dim hw As New System.Web.UI.HtmlTextWriter(tw)
MyDataGrid.RenderControl(hw)
Response.Write(tw.ToString())
Response.End()
MyDataGrid.AllowPaging = "true"
BindGrid()
End Sub