2010-04-30 5 views
2

Actuellement, je suis confronté au problème fastidieux de l'exportation de données GridView complètes dans le fichier pdf afin que l'utilisateur puisse l'enregistrer. J'utilise C# comme langue dans Asp.net 3.5. Veuillez me guider.Comment exporter des données GridView au format pdf dans Asp.net et C#?

La vue grille contient uniquement des valeurs de texte.

Merci d'avance.

+0

Presque tous les liens utilisent le iTextSharp ... est-il fiable ... toute question de droit d'auteur ou quelque chose. De plus existe-t-il une autre façon de le faire autre que iTextSharp? – HotTester

+0

iTextSharp est fiable, mais vous trouverez qu'il est mal documenté. C'est aussi open source. http://sourceforge.net/projects/itextsharp/ –

+0

Veuillez essayer d'utiliser la méthode dans cette astuce ([http://www.codeproject.com/Tips/190144/Export-Database-to-Excel-PDF-HTML-RTF -XML-etc-for-.aspx] (http://www.codeproject.com/Tips/190144/Export-Database-to-Excel-PDF-HTML-RTF-XML-etc-for-.aspx)). Cela peut être utile. –

Répondre

1

nFOP + XSLT + XML = pdf | doc | HTML

open source sans frais :)

K

+0

Merci pour la réponse. Veuillez partager tout lien illustrant sa mise en œuvre de l'exportation de données gridview vers pdf. – HotTester

+0

http://nfop.sourceforge.net/article.html devrait vous donner une idée sur la façon de l'utiliser, vous avez besoin de "Microsoft Visual J # NET Redistributable Package" pour exécuter nFOP. K – TheOCD

0
public override void VerifyRenderingInServerForm(Control control) 
{ 
    /* Verifies that the control is rendered */ 
} 

protected void GeneratePDF_Click(object sender, EventArgs e) 
{ 
    Response.ContentType = "application/pdf"; 
    Response.AddHeader("content-disposition", "attachment;filename=UserDetails.pdf"); 
    Response.Cache.SetCacheability(HttpCacheability.NoCache); 
    StringWriter sw = new StringWriter(); 
    HtmlTextWriter hw = new HtmlTextWriter(sw); 
    GridView1.AllowPaging = false; 
    GridView1.DataBind(); 
    GridView1.RenderControl(hw); 
    GridView1.HeaderRow.Style.Add("width", "15%"); 
    GridView1.HeaderRow.Style.Add("font-size", "10px"); 
    GridView1.Style.Add("text-decoration", "none"); 
    GridView1.Style.Add("font-family", "Arial, Helvetica, sans-serif;"); 
    GridView1.Style.Add("font-size", "8px"); 
    StringReader sr = new StringReader(sw.ToString()); 
    Document pdfDoc = new Document(PageSize.A2, 7f, 7f, 7f, 0f); 
    HTMLWorker htmlparser = new HTMLWorker(pdfDoc); 
    PdfWriter.GetInstance(pdfDoc, Response.OutputStream); 
    pdfDoc.Open(); 
    htmlparser.Parse(sr); 
    pdfDoc.Close(); 
    Response.Write(pdfDoc); 
    Response.End(); 
} 
Questions connexes