更快地将带有彩色单元格的数据视图导出到excel



我已经搜索过,只能找到导出datagridview到excel没有颜色信息的方法。我想导出数据视图excel与细胞着色完整。现在,我一个细胞一个细胞地做,速度很慢。我正在寻找一种更快的方法来做到这一点?

任何建议或指示都将非常有帮助。

谢谢Mansoor

Public Shared Sub ExportGridViewToExcelGridView(ByVal Filename As String, ByRef gvr As GridView, ByRef currentPage As Page)
    Dim HtmlForm As System.Web.UI.HtmlControls.HtmlForm = New System.Web.UI.HtmlControls.HtmlForm()
    currentPage.Controls.Add(HtmlForm)
    HtmlForm.Controls.Add(gvr)
    currentPage.Response.Clear()
    currentPage.Response.Buffer = True
    currentPage.Response.AddHeader("Content-Disposition", "attachment; filename=" & Filename)
    currentPage.Response.ContentType = "application/vnd.ms-excel"
    currentPage.Response.ContentEncoding = System.Text.Encoding.UTF8
    currentPage.Response.Charset = ""
    currentPage.EnableViewState = False
    Using strwriter As New StringWriter
        Dim htmlwrt As HtmlTextWriter = New HtmlTextWriter(strwriter)
        HtmlForm.RenderControl(htmlwrt)
        htmlwrt.Flush()
        currentPage.Response.Write(strwriter.ToString)
        currentPage.Response.End()
    End Using
End Sub

你可以使用这个函数,确保在包含gridview的页面中设置EnableEventValidation为False,并且分页属性设置为False .

最新更新