enn Sie Excel-Dateien aus dem Internet öffnen, wird ein leeres Excel-Fenster geöffne

Eine Methode zum Speichern einer GridView-Datei in einer Excel-Datei zum Herunterladen / Öffnen aus dem Internet wurde kürzlich durch neue Windows-Updates beschädigt.

Mein Code wird mithilfe von StringWriter, HTMLTextWriter und RenderControl aus einer GridView in eine XLS-Datei ausgegeben. Ein allgemeiner Ansatz unter Verwendung des folgenden Codes vonhttp: //www.aspsnippets.com/Articles/Export-GridView-to-Excel-in-ASPNet-with-Formatting-using-C-and-VBNet.asp

Protected Sub ExportToExcel(sender As Object, e As EventArgs)
    Response.Clear()
    Response.Buffer = True
    Response.AddHeader("content-disposition", "attachment;filename=GridViewExport.xls")
    Response.Charset = ""
    Response.ContentType = "application/vnd.ms-excel"
    Using sw As New StringWriter()
        Dim hw As New HtmlTextWriter(sw)

        'To Export all pages
        GridView1.AllowPaging = False
        Me.BindGrid()

        GridView1.HeaderRow.BackColor = Color.White
        For Each cell As TableCell In GridView1.HeaderRow.Cells
            cell.BackColor = GridView1.HeaderStyle.BackColor
        Next
        For Each row As GridViewRow In GridView1.Rows
            row.BackColor = Color.White
            For Each cell As TableCell In row.Cells
                If row.RowIndex Mod 2 = 0 Then
                    cell.BackColor = GridView1.AlternatingRowStyle.BackColor
                Else
                    cell.BackColor = GridView1.RowStyle.BackColor
                End If
                cell.CssClass = "textmode"
            Next
        Next

        GridView1.RenderControl(hw)
        'style to format numbers to string
        Dim style As String = "<style> .textmode { } </style>"
        Response.Write(style)
        Response.Output.Write(sw.ToString())
        Response.Flush()
        Response.[End]()
    End Using
End Sub

Public Overrides Sub VerifyRenderingInServerForm(control As Control)
    ' Verifies that the control is rendered
End Sub

Excel (2013) wird in einem leeren Fenster geöffnet, ohne Warnung oder Meldung, warum etwas blockiert wurde, und ohne die Option, die zu öffnende Datei zu akzeptieren.

Mein Code wird auf einer Intranetsite ausgeführt, und ich habe unter Windows Zugriff auf Gruppenrichtlinien / Einstellungen / Benutzerkonfigurationen.

Antworten auf die Frage(14)

Ihre Antwort auf die Frage