Asp.Net2.0的GridView如何匯出成EXCEL?
在Asp .Net 1.1的時代
我們只要把資料導入DataGrid然後用以下程式碼即可串流輸出成Excel的檔案類型!
*********************************************
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)
DataGrid.RenderControl(hw)
Response.Write(tw.ToString())
Response.End()
*********************************************
但是到了Asp .Net 2.0 如果照原本的做法, 換到GridView上面, 就會發生錯誤!
錯誤訊息會叫使用者把GridView放置在有runat="server"的表單裡面!
但是使用者如果是使用VS2005的編譯環境, 應該都會放置在runat="server"
的Form裡面, 但是還是會有這樣的錯誤!
所以只需要在程式碼裡面加上以下的code即可讓GridView能像DataGrid一樣
正常運作!!!!匯出成Excel的檔案!
*************************************************
Public Overrides Sub VerifyRenderingInServerForm(ByVal control As Control)
End Sub
*************************************************
我們只要把資料導入DataGrid然後用以下程式碼即可串流輸出成Excel的檔案類型!
*********************************************
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)
DataGrid.RenderControl(hw)
Response.Write(tw.ToString())
Response.End()
*********************************************
但是到了Asp .Net 2.0 如果照原本的做法, 換到GridView上面, 就會發生錯誤!
錯誤訊息會叫使用者把GridView放置在有runat="server"的表單裡面!
但是使用者如果是使用VS2005的編譯環境, 應該都會放置在runat="server"
的Form裡面, 但是還是會有這樣的錯誤!
所以只需要在程式碼裡面加上以下的code即可讓GridView能像DataGrid一樣
正常運作!!!!匯出成Excel的檔案!
*************************************************
Public Overrides Sub VerifyRenderingInServerForm(ByVal control As Control)
End Sub
*************************************************