Vb.net导出GridView到Excel

CYC0616

我无法将gridview导出到Excel文件。一切正常,但当我按下导出按钮时,应该导出到excel文件的数据显示在网页上。我怀疑这与Response.ContentType和我指定的文件名有关。但是,我已经浏览了多个文档和示例,看来这两个问题并不是我的根本问题。有人可以帮忙吗?

<asp:Button ID="btnExport" runat="server" Text="Export To MS Excel File" CssClass="btnMain" OnClick="btnExport_Click" />    




Protected Sub btnExport_Click(ByVal sender As Object, ByVal e As System.EventArgs) 

        Dim filename As String = "PerformanceEval Status Report" & Date.Now.Year.ToString & "-" & _
                                    formatNumberTo2Digits(DateTime.Now.Month) & "-" & formatNumberTo2Digits(DateTime.Now.Day) & ".xls"

        With Page.Response

            .Clear()
            .Buffer = True
            .AddHeader("content_disposition", "attachment;filename" & filename)
            .Charset = ""

            '--to open the Excel file without saving then comment out the line below
            '.Cache.SetCacheability(HttpCacheability.NoCache)

            '.ContentType = "application/vnd.xls"   'data appears on web page 
            '.ContentType = "application/vnd.ms-excel"  'try to download .aspx document NOT .xml
            .ContentType = "application/ms-excel"  'data appears on web page 

        End With


        Dim strWriter As New System.IO.StringWriter
        Dim htmlWriter As System.Web.UI.HtmlTextWriter = New HtmlTextWriter(strWriter)

        Dim gvexport As GridView = New GridView
        gvexport.AutoGenerateColumns = False
        gvexport.CssClass = "gridData"
        gvexport.GridLines = GridLines.Horizontal
        gvexport.HeaderStyle.CssClass = "gridHeader"
        gvexport.RowStyle.CssClass = "gridRow"
        gvexport.AlternatingRowStyle.CssClass = "gridRow_Alt"
        gvexport.FooterStyle.CssClass = "gridFooter"

        Dim dv As DataView = New DataView(Me.ds.Tables(0))  'default is sorted by last name
        'Dim dv As DataView = New DataView(Me.ds.Tables(0))
        dv.RowFilter = GetFilter()

        '-- add columns for report
        addGVcolumn("Employee Name", "EmployeeName", gvexport, -1, HorizontalAlign.Left)
        addGVcolumn("Employee ID", "SID", gvexport, -1, HorizontalAlign.Left)
        addGVcolumn("Email", "WorkEmail", gvexport, -1, HorizontalAlign.Left)
        addGVcolumn("StatusID", "StatusID", gvexport, 50, HorizontalAlign.Center)

        gvexport.DataSource = dv
        gvexport.DataBind()

        gvexport.RenderControl(htmlWriter)

        Response.Output.Write(strWriter.ToString())

        Response.Flush()
        Response.End()

同样,我能够生成内容,但是无法将数据导出到excel。非常感谢!

伊万

您输入了错误的标题:

.AddHeader "content-disposition", "attachment; filename="& filename &";"

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Xelement到gridview vb.net

来自分类Dev

从excel导入特定数据到datagrid vb.net

来自分类Dev

在vb.net gridview上排序

来自分类Dev

Gridview的VB.NET扩展方法

来自分类Dev

从VB.Net导出到Excel后,十进制分隔符丢失

来自分类Dev

使用VB.net导出后Excel文件出现问题

来自分类Dev

使用 VB.NET 将数据从 DataGridView 导出为 Excel 表

来自分类Dev

使用VB将asp.net gridview中的行复制到新页面

来自分类Dev

委托从VB6到vb.net的错误转换

来自分类Dev

从VB6到VB.NET的转换按钮样式

来自分类Dev

VB.NET和VB之间的区别

来自分类Dev

vb.net Task(Of HttpResponseMessage)到HttpResponseMessage

来自分类Dev

C#到VB .NET IntPtr转换

来自分类Dev

ASP.Net-VB到.MDF连接

来自分类Dev

从SQL查询到vb.net的数据

来自分类Dev

从C ++到VB.NET的转换

来自分类Dev

从VBA到vb NET的翻译程序

来自分类Dev

VB.Net到C#的替换

来自分类Dev

Excel GoogleGeocode VB错误

来自分类Dev

Excel GoogleGeocode VB错误

来自分类Dev

将数据从VB导出到Excel工作表

来自分类Dev

从datagridview导出的excel文件在打开VB时显示错误

来自分类Dev

将datagridview标头列导出到excel vb 2012

来自分类Dev

VB NET,累积损坏

来自分类Dev

VB Net IsDBNull问题

来自分类Dev

Vb.net-FolderBrowserDialog

来自分类Dev

VB.NET FolderBrowserDialog

来自分类Dev

Vb.Net-UpdateDriverForPlugAndPlayDevices

来自分类Dev

Vb.net-FolderBrowserDialog