Foros del Web » Programando para Internet » ASPX (.net) »

sobre exportar de c# a word

Estas en el tema de sobre exportar de c# a word en el foro de ASPX (.net) en Foros del Web. Buenas tardes señores El tema es que he estado exportando a word una pagina web con un gridview con el siguiente código string style = ...
  #1 (permalink)  
Antiguo 28/09/2010, 14:44
 
Fecha de Ingreso: julio-2010
Mensajes: 8
Antigüedad: 13 años, 9 meses
Puntos: 0
sobre exportar de c# a word

Buenas tardes señores

El tema es que he estado exportando a word una pagina web con un gridview con el siguiente código

string style = @"<style> .text { mso-number-format:\@; background-color: #00FFFF;} </style> ";
Response.ClearContent();
Response.AddHeader("content-disposition", "attachment;filename=FileName.doc");

Response.ContentEncoding = System.Text.Encoding.UTF7;
Response.ContentType = "application/vnd.word";
System.IO.StringWriter oStringWriter = new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter oHtmlTextWriter = new System.Web.UI.HtmlTextWriter(oStringWriter);
this.gv_malla_nueva.RenderControl(oHtmlTextWriter) ;
Response.Write(style);
Response.Output.Write("AVANCE DE MALLA <br>");
Response.Output.Write("Alumno: " + txtCodAlum.Text + " " + txtNomAlum.Text + "<br>");
Response.Output.Write("Carrera: " + txtCodCarrAlum.Text + " " + txtNomCarrAlum.Text + "<br>");
Response.Output.Write(oStringWriter.ToString());
Response.Flush();
Response.End();

Uso este código porque como es web, asi no se me obliga a tener el oficce instalado en el servidor y no tengo problemas con los usuarios al momento de la exportación, pero me salio un problema que no he podido solucionar y sería excelente que me pudiera ayudar

Pasa que no se como darle estilo a los textos, ejemplo que "AVANCE DE MALLA" quede centrado y de tamaño 16 y como no uso librerías de oficce no tengo las propiedades, alguien sabe como hacer eso???

También me gustaría que lo que exporto no quede editable... NO PIDO NA ajajjaja

Bueno para el que quiera usar estas lineas le aviso que van dentro del evento del botón y ademas deben agregar lo siguiente en el código.

public override void VerifyRenderingInServerForm(Control control)
{
}
Bueno que tengan un excelente día
  #2 (permalink)  
Antiguo 28/09/2010, 14:59
 
Fecha de Ingreso: julio-2006
Ubicación: En algún lugar de un grán pais
Mensajes: 112
Antigüedad: 17 años, 9 meses
Puntos: 2
Respuesta: sobre exportar de c# a word

mmmm... solamente que hay 2 cosas, cuando le pones seguridad a un archivo word.. realmente lo pueden editar, solo que sobre ese no lo pueden guardar, pero SI lo pueden guardar con otro nombre... así que.. no le veo el caso, sería mejor que guardaras un pdf, esos no se pueden guardar.
Lo del formato, etc... no se puede si no usas automation (que es tener las librerias de office).
En ese caso podrías tener un archivo "plantilla" y con una macro que formateara todo lo que necesitas.
  #3 (permalink)  
Antiguo 30/09/2010, 11:43
Avatar de Potro  
Fecha de Ingreso: abril-2001
Mensajes: 2.249
Antigüedad: 23 años
Puntos: 39
Respuesta: sobre exportar de c# a word

Mira yo para poner estilos hago los siguiente:


string strBody = "<html><head><title></title></head><body><table width='100%' border='0' cellpadding='0' cellspacing='0' style='font-family:Tahoma, Geneva, sans-serif; font-size:11px; text-align:justify'>" +
"<tr><td><p align='right'>México, D.F. a </p></td></tr>" +
"<tr><td>&nbsp;<br><br><br><br><br></td></tr>" +
"<tr><td><p><strong>MI EMPRESITA</strong></p></td></tr>" +
"<tr><td><p><strong>MUCHO TEXTO .</strong></p></td></tr>" +
"<tr><td>&nbsp;<br><br></td></tr>" +
"<tr><td><p>MUCHO TEXTO:</p></td></tr>" +
"<tr><td><p>MUCHO TEXTOMUCHO TEXTO.</p></td></tr>" +
"<tr><td>&nbsp;</td></tr>" +
"<tr><td><p>MUCHO TEXTO MUCHO TEXTO MUCHO TEXTO MUCHO TEXTO MUCHO TEXTO MUCHO TEXTO MUCHO TEXTO MUCHO TEXTO.</p></td></tr>" +
"<tr><td>&nbsp;<br><br><br></td></tr>" +
"<tr><td><p align='center'>MUCHO TEXTO</p></td></tr>" +
"<tr><td>&nbsp;<br><br><br><br><br><br></td></tr>" +
"<tr><td><p align='center'><strong>" MUCHO TEXTOMUCHO TEXTO</strong></p></td></tr>" +
"</table></body></html>";


string fileName = "Nombre.doc";
// Hacemos el documento
Response.AppendHeader("Content-Type", "application/msword");
Response.AppendHeader("Content-disposition", "attachment; filename=" + fileName);
Response.Write(strBody);




y asi genero mi doc con formato.......


Espero te sirva,,

Saludos...
__________________
Paginación en FLASH,

http://www.forosdelweb.com/f62/pagin...o-aqui-540241/

Etiquetas: word, aspx
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:42.