c# - Cannot get Gridview header on PDF in ASP.NET -


i trying add pdf asp page, takes value gridview onto pdf. however, can values apart header. there seem space on top nothing there. have practically copied code here.
html markup :

  <asp:gridview id="gridview1" runat="server" autogeneratecolumns="false" cellpadding="4" forecolor="#333333" gridlines="none" width="100%" allowpaging="true" datakeynames="enrollecode" onpageindexchanging="gridview1_pageindexchanging" onrowcommand="gridview1_rowcommand" onrowdeleting="gridview1_rowdeleting" onselectedindexchanged="gridview1_selectedindexchanged" onrowediting="gridview1_rowediting" pagersettings-pagebuttoncount="20">                                     <alternatingrowstyle backcolor="white" forecolor="#284775" />                                     <columns>                                          <asp:templatefield headertext="enrolee code" sortexpression="enrollecode">                         <itemtemplate>                               <div style="overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100px">                             <asp:label id="lblenrollecode" runat="server" text='<%# eval("enrollecode") %>' tooltip='<%# eval("enrollecode") %>' ></asp:label>                                   </div>                         </itemtemplate>                     </asp:templatefield>                                          <asp:templatefield headertext="enrolee name" sortexpression="enroleename">                         <itemtemplate>                               <div style="overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100px">                             <asp:label id="lblenroleename" runat="server" text='<%# eval("enroleename") %>' tooltip='<%# eval("enroleename") %>' ></asp:label>                                   </div>                         </itemtemplate>                     </asp:templatefield>                                           <asp:templatefield headertext="hmo" sortexpression="hmoname">                         <itemtemplate>                               <div style="overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100px">                             <asp:label id="lblhmoname" runat="server" text='<%# eval("hmoname") %>' tooltip='<%# eval("hmoname") %>'></asp:label>                                   </div>                         </itemtemplate>                     </asp:templatefield>                                         <asp:templatefield headertext="area council" sortexpression="areacouncil">                         <itemtemplate>                               <div style="overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100px">                             <asp:label id="lblareacouncil" runat="server" text='<%# eval("areacouncil") %>' tooltip='<%# eval("areacouncil") %>'></asp:label>                                   </div>                         </itemtemplate>                     </asp:templatefield>                                         <asp:templatefield headertext="main hospital" sortexpression="mainhospital">                         <itemtemplate>                               <div style="overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100px">                             <asp:label id="lblmainhospital" runat="server" text='<%# eval("mainhospital") %>' tooltip='<%# eval("mainhospital") %>'></asp:label>                                   </div>                         </itemtemplate>                     </asp:templatefield>                                          <asp:templatefield headertext="alt. hospital" sortexpression="alternatehospital">                         <itemtemplate>                               <div style="overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100px">                             <asp:label id="lblalternatehospital" runat="server" text='<%# eval("alternatehospital") %>' tooltip='<%# eval("alternatehospital") %>'></asp:label>                                   </div>                         </itemtemplate>                     </asp:templatefield>                                            <asp:templatefield headertext="d.o.b." sortexpression="date">                         <itemtemplate>                               <div style="overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100px">                             <asp:label id="lbldob" runat="server" text='<%# eval("dob","{0:dd/mm/yyyy}") %>' tooltip='<%# eval("dob","{0:dd/mm/yyyy}") %>'></asp:label>                                   </div>                         </itemtemplate>                     </asp:templatefield>                                              <asp:templatefield headertext="view">                                              <itemtemplate>                                                 <asp:imagebutton id="imgview" runat="server" commandargument='<%#eval("enrollecode") %>' commandname="view" imageurl="~/image/8.png"  />                                               </itemtemplate>                                          </asp:templatefield>                                          <asp:templatefield headertext="edit">                                              <itemtemplate>                                                 <asp:imagebutton id="imgedit" runat="server" commandargument='<%#eval("enrollecode") %>' commandname="edit" imageurl="~/image/editbutton.png"  />                                               </itemtemplate>                                          </asp:templatefield>                                         <asp:templatefield headertext="delete">                                             <itemtemplate>                                                 <asp:imagebutton id="imgdelete" runat="server" commandargument='<%#eval("enrollecode") %>' commandname="delete" imageurl="~/image/delete1.png" onclientclick="return confirm('do want delete?');" />                                              </itemtemplate>                                         </asp:templatefield>                                        </columns>                                     <editrowstyle backcolor="#999999" />                                     <footerstyle backcolor="#5d7b9d" font-bold="true" forecolor="white" />                                     <headerstyle backcolor="#5d7b9d" font-bold="true" forecolor="white" />                                     <pagerstyle backcolor="#284775" forecolor="white" horizontalalign="center" />                                     <rowstyle backcolor="#f7f6f3" forecolor="#333333" horizontalalign="center" />                                     <selectedrowstyle backcolor="#e2ded6" font-bold="true" forecolor="#333333" />                                     <sortedascendingcellstyle backcolor="#e9e7e2" />                                     <sortedascendingheaderstyle backcolor="#506c8c" />                                     <sorteddescendingcellstyle backcolor="#fffdf8" />                                     <sorteddescendingheaderstyle backcolor="#6f8dae" />                                 </asp:gridview> 

and namespaces added :

using itextsharp.text; using itextsharp.text.pdf; using itextsharp.text.html.simpleparser; using system.io; using system.web.ui.htmlcontrols; 

my codes:

  protected void button1_click(object sender, eventargs e)     {          using (stringwriter sw = new stringwriter())         {             using (htmltextwriter hw = new htmltextwriter(sw))             {                 //to export pages                 gridview1.allowpaging = false;                 gridview1.showheader = true;                  this.bindgv();                  gridview1.rendercontrol(hw);                 stringreader sr = new stringreader(sw.tostring());                 document pdfdoc = new document(pagesize.a2, 10f, 10f, 10f, 0f);                 htmlworker htmlparser = new htmlworker(pdfdoc);                 pdfwriter.getinstance(pdfdoc, response.outputstream);                 pdfdoc.open();                  htmlparser.parse(sr);                 pdfdoc.close();                  response.contenttype = "application/pdf";                 response.addheader("content-disposition", "attachment;filename=gridviewexport.pdf");                 response.cache.setcacheability(httpcacheability.nocache);                 response.write(pdfdoc);                 response.end();             }         } 

this working me using itextsharp 5.5.3

response.clear(); response.clearcontent(); response.clearheaders(); response.charset = string.empty; response.contenttype = "application/pdf"; response.addheader("content-disposition", "attachment;filename=gridviewexport.pdf"); response.cache.setcacheability(httpcacheability.nocache); page.response.buffer = false; using (stringwriter sw = new stringwriter()) {     using (htmltextwriter hw = new htmltextwriter(sw))     {         gridview1.allowpaging = false;         gridview1.showheader = true;         this.bindgv();         gridview1.rendercontrol(hw);         using (stringreader sr = new stringreader(sw.tostring()))         {             document pdfdoc = new document(pagesize.a2, 10f, 10f, 10f, 0f);             htmlworker htmlparser = new htmlworker(pdfdoc);             memorystream ms = new memorystream();             pdfwriter.getinstance(pdfdoc, ms);             pdfdoc.open();             htmlparser.parse(sr);             pdfdoc.close();             byte[] bytes = ms.toarray();             response.addheader("content-length", bytes.length.tostring());             response.binarywrite(bytes);             response.close();         }     } } 

Comments

Popular posts from this blog

node.js - Mongoose: Cast to ObjectId failed for value on newly created object after setting the value -

[C++][SFML 2.2] Strange Performance Issues - Moving Mouse Lowers CPU Usage -

ios - Possible to get UIButton sizeThatFits to work? -