I am converting an html into pdf, I have observed that the pdf is getting generated but not properly.
i.e. the Datalist2 and the gridview2 present inside the Datalist2 is not getting populated.
Any idea why is it working so.
I have the html code as below
I convert using itextsharp the code is as below
Can anyone let me know as to why i am not able to convert that datalist into pdf?
i.e. the Datalist2 and the gridview2 present inside the Datalist2 is not getting populated.
Any idea why is it working so.
I have the html code as below
Code:
<table id="tblReport" runat="server"> <asp:DataList ID="DataList1" runat="server"> <ItemTemplate> <tr> <td> <asp:Label ID="lbl1" runat="server"> </asp:Label> </td> </tr> <tr> <td> <asp:GridView ID="GridView1" runat="server"> <Columns> <asp:TemplateField> <ItemTemplate> <asp:Label ID="lbl1" runat="server"> </asp:Label> </ItemTemplate> </asp:TemplateField> </Columns> </asp:GridView> </td> </tr> <tr> <td> <asp:GridView ID="GridView2" runat="server"> <Columns> <asp:TemplateField> <ItemTemplate> <asp:Label ID="lbl1" runat="server"> </asp:Label> </ItemTemplate> </asp:TemplateField> </Columns> </asp:GridView> </td> </tr> <tr> <td> <asp:DataList ID="DataList2" runat="server"> <ItemTemplate> <table id="tblvalues" runat="server"> <tr> <td> <asp:GridView ID="GridView2" runat="server"> <Columns> <asp:TemplateField> <ItemTemplate> <asp:Label ID="lbl1" runat="server"> </asp:Label> </ItemTemplate> <FooterTemplate> <asp:Label ID="lbl1" runat="server"> </asp:Label> </FooterTemplate> </asp:TemplateField> </Columns> </asp:GridView> </td> </tr> </table> </ItemTemplate> </asp:DataList> </td> </tr> </ItemTemplate> </asp:DataList> </table>
Code:
Response.ContentType = "application/pdf"; Response.ContentEncoding = System.Text.Encoding.UTF8; Response.AddHeader("content-disposition", "attachment;filename=FileName.pdf"); Response.Cache.SetCacheability(HttpCacheability.NoCache); System.IO.StringWriter stringWrite = new StringWriter(); System.Web.UI.HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite); tblReport.RenderControl(htmlWrite); //tblReport is a table StringReader reader = new StringReader(textConvert(stringWrite.ToString())); Document doc = new Document(PageSize.A4); HTMLWorker parser = new HTMLWorker(doc); PdfWriter.GetInstance(doc, Response.OutputStream); doc.Open(); parser.Parse(reader); doc.Close();
Comment