10 messaggi dal 04 gennaio 2014
Ciao a tutti.

ho implementato il seguente codice per esportare in .xls una GridView

        Response.Clear()
        Response.Buffer = True

        Response.AddHeader("content-disposition", "attachment;filename=SenzaNome.xls")
        Response.Charset = ""
        Response.ContentType = "application/vnd.ms-excel"
        Dim sw As New StringWriter()
        Dim hw As New HtmlTextWriter(sw)

        GridView1.AllowPaging = False
        GridView1.DataBind()

        GridView1.HeaderRow.Style.Add("background-color", "#F0F0F0")

        For i As Integer = 0 To GridView1.Rows.Count - 1
            Dim row As GridViewRow = GridView1.Rows(i)

            row.BackColor = System.Drawing.Color.White
            row.ForeColor = System.Drawing.Color.Black

            row.Attributes.Add("class", "textmode")

        Next
        GridView1.RenderControl(hw)

        'style to format numbers to string
        Dim style As String = "<style>.textmode{mso-number-format:\@;}</style>"
        Response.Write(style)
        Response.Output.Write(sw.ToString())
        Response.Flush()
        Response.End()



Uno dei campi della GridView, sebbene contenga numeri, è di Tipo Testo.
Il contenuto di questo campo, nel file esportato, viene trattato come numero quindi, ad esempio, il valore "0012565" diventa "12565".

Dove sbaglio?

Grazie

Gaetano

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.