27/11/2008, 05:50
|
| | | Fecha de Ingreso: julio-2007 Ubicación: Montevideo (Uruguay)
Mensajes: 919
Antigüedad: 17 años, 5 meses Puntos: 13 | |
Respuesta: Exportar muuuuuchos datos de Gridview a excel Que yo sepa no podes exportar con paginado (bueno si podrias pero seria muy engorroso), lo que te recomiendo es hacer otro gridview en vuelo y a este le das el formato que quieras y sin paginado y es este el que exportas y no el que el cliente esta viendo (obvio que con el mismo resultado no!!!) 'Esto exporta a excel la grilla
Private Sub ExportToExcel()
Dim sb As New StringBuilder()
Dim sw As New StringWriter(sb)
Dim htw As New HtmlTextWriter(sw)
Dim dg As New GridView
dg.AllowPaging = False
dg.ShowFooter = False
dg.PagerSettings.Visible = False
dg.AutoGenerateColumns = True
dg.RowStyle.HorizontalAlign = HorizontalAlign.Left
Dim Page As New Page()
Dim form As New HtmlForm()
'aca llamas al evento que te retorna un DataSet, eso te lo dejo a vos que es muy simple si ya sabes lo que tenes que exportar
dg.DataSource = LlenarParaExcel()
dg.DataBind()
If dg.Rows.Count > 0 Then
Page.EnableEventValidation = False
Page.DesignerInitialize()
Page.Controls.Add(form)
form.Controls.Add(dg)
Page.RenderControl(htw)
Response.Clear()
Response.Buffer = True
Response.ContentType = "application/vnd.ms-excel"
Response.AddHeader("Content-Disposition", "attachment;filename=TuPlanilla.xls")
Response.Charset = "UTF-8"
Response.ContentEncoding = Encoding.Default
Response.Write(sb.ToString())
Response.End()
Else
Exit Sub
End If
End Sub |