Ver Mensaje Individual
  #3 (permalink)  
Antiguo 23/05/2012, 16:09
mrprogman
 
Fecha de Ingreso: junio-2011
Mensajes: 329
Antigüedad: 12 años, 10 meses
Puntos: 2
Respuesta: Gridview por Correo

Gracias por tu respuesta, ya habia visto esos enlaces...tengo el siguiente codigo


Protected Sub Button4_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button4.Click
Dim mail As System.Net.Mail.MailMessage = New System.Net.Mail.MailMessage()

mail.Body = GridViewToHtml(GridView1)
mail.IsBodyHtml = True
mail.To.Add(New System.Net.Mail.MailAddress("[email protected]"))
mail.From = New System.Net.Mail.MailAddress("[email protected]")
mail.Subject = "Hello"
Dim smptClient As System.Net.Mail.SmtpClient = New System.Net.Mail.SmtpClient()
smptClient.Send(mail)
End Sub




Private Function GridViewToHtml(ByVal gv As GridView) As String
Dim sb As New StringBuilder()
Dim sw As New StringWriter(sb)
Dim hw As New HtmlTextWriter(sw)
GridView1.RenderControl(hw)
Return sb.ToString()
End Function

pero me marca el siguiente error:


'GridView' must be placed inside a form tag with runat=server

buscando el google encontre esta solucion:

Protected Overrides Sub Render(ByVal writer As HtmlTextWriter)
If Request.Form IsNot Nothing Then
If Request.Form(Button1.ClientID) IsNot Nothing Then
' Render the controls to a different text writer
writer.WriteLine("pruebas.aspx")


' Do not allow the page to be rendered
Return
End If
End If
MyBase.Render(writer)
End Sub

pero me sigue marcando el mismo error...alguien me puede hechar una mano por favor..?