我想以PDF格式下载gridview [英] I want to download gridview as PDF
本文介绍了我想以PDF格式下载gridview的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想下载网格视图为pdf但是当我点击按钮时它只是刷新页面
但不下载gridview为pdf
在catch区块显示异常为
I want download grid view as pdf but when i click on button it is just refreshing page
but not downloading gridview as pdf
in catch block it showing exception as
System.Threading.ThreadAbortException: Thread was being aborted.
at System.Threading.Thread.AbortInternal()
at System.Threading.Thread.Abort(Object stateInfo)
at System.Web.HttpResponse.AbortCurrentThread()
at System.Web.HttpResponse.End()
at User_WorkOrder.btnPrint_Click(Object sender, EventArgs e) in c:\Users\DELL\Desktop\Vinayak\VCHEM Current Updated\User\WorkOrder.aspx.cs:line 2553
我尝试过:
我有ASPX页面跟随
What I have tried:
I have ASPX page as Follows
<asp:GridView ID="gvpdf" AutoGenerateColumns="False" runat="server" HeaderStyle-BackColor="dimgray" HeaderStyle-ForeColor="white" Width="100%" PageSize="100" Font-Size="15px" CellPadding="2" AllowPaging="True" BackColor="#F8F8F8" BorderStyle="None" OnRowDataBound="gvWorkOrder_RowDataBound">
<AlternatingRowStyle BackColor="White" ForeColor="#284775" />
<Columns>
<asp:BoundField HeaderStyle-Width="70px" HeaderText="Work_Order_Id" DataField="Work_Order_Id" HeaderStyle-CssClass="hide" ItemStyle-CssClass="hide">
<FooterStyle BackColor="#CCCCCC" />
<HeaderStyle></HeaderStyle>
<ItemStyle Height="30px" HorizontalAlign="Center" VerticalAlign="Middle" BorderColor="#CCCCCC" />
</asp:BoundField>
<%--<asp:BoundField HeaderStyle-Width="150px" HeaderText="Package Name" ItemStyle-HorizontalAlign="Center" DataField="PackageName" />--%>
<%--<asp:TemplateField HeaderText="Sr. No.">
<HeaderStyle Height="30px" HorizontalAlign="Center" VerticalAlign="Middle"></HeaderStyle>
<ItemStyle Height="20px" HorizontalAlign="Left" VerticalAlign="Middle" BorderColor="#CCCCCC" Width="100px" />
<ItemTemplate>
<%#Container.DataItemIndex+1 %>
</ItemTemplate>
<ItemStyle Width="80px" />
</asp:TemplateField>--%>
<asp:BoundField HeaderStyle-Width="150px" HeaderText="Sample No" DataField="Sample_No">
<HeaderStyle Height="30px" HorizontalAlign="Center" VerticalAlign="Middle"></HeaderStyle>
<ItemStyle Height="20px" HorizontalAlign="Left" VerticalAlign="Middle" BorderColor="#CCCCCC" Width="200px" />
</asp:BoundField>
<asp:BoundField HeaderStyle-Width="150px" HeaderText="Sample Reg. No" DataField="Work_Order_No">
<HeaderStyle Height="30px" HorizontalAlign="Center" VerticalAlign="Middle"></HeaderStyle>
<ItemStyle Height="20px" HorizontalAlign="Left" VerticalAlign="Middle" BorderColor="#CCCCCC" Width="200px" />
</asp:BoundField>
<asp:BoundField HeaderStyle-Width="150px" HeaderText="Customer Name" DataField="Customer_Name">
<HeaderStyle Height="30px" HorizontalAlign="Center" VerticalAlign="Middle"></HeaderStyle>
<ItemStyle Height="20px" HorizontalAlign="Left" VerticalAlign="Middle" BorderColor="#CCCCCC" Width="300px" />
</asp:BoundField>
<asp:BoundField HeaderStyle-Width="150px" DataFormatString="{0:dd-MM-yyyy}" HeaderText="Date" DataField="Date">
<HeaderStyle Height="30px" HorizontalAlign="Center" VerticalAlign="Middle"></HeaderStyle>
<ItemStyle Height="20px" HorizontalAlign="Left" VerticalAlign="Middle" BorderColor="#CCCCCC" Width="100px" />
</asp:BoundField>
<asp:BoundField HeaderStyle-Width="150px" DataFormatString="{0:dd-MM-yyyy}" HeaderText="Delivery Date" DataField="Delivery_Date">
<HeaderStyle Height="30px" HorizontalAlign="Center" VerticalAlign="Middle"></HeaderStyle>
<ItemStyle Height="20px" HorizontalAlign="Left" VerticalAlign="Middle" BorderColor="#CCCCCC" Width="100px" />
</asp:BoundField>
<asp:BoundField HeaderStyle-Width="150px" HeaderText="D Challan No" DataField="Customer_D_Challan_No">
<HeaderStyle Height="30px" HorizontalAlign="Center" VerticalAlign="Middle"></HeaderStyle>
<ItemStyle Height="20px" HorizontalAlign="Left" VerticalAlign="Middle" BorderColor="#CCCCCC" Width="250px" />
</asp:BoundField>
<asp:BoundField HeaderStyle-Width="150px" DataFormatString="{0:dd-MM-yyyy}" HeaderText="Challan Date" DataField="Challan_Date">
<HeaderStyle Height="30px" HorizontalAlign="Center" VerticalAlign="Middle"></HeaderStyle>
<ItemStyle Height="20px" HorizontalAlign="Left" VerticalAlign="Middle" BorderColor="#CCCCCC" Width="100px" />
</asp:BoundField>
<asp:BoundField HeaderStyle-Width="150px" HeaderText="No of Sample" DataField="Quantity">
<HeaderStyle Height="30px" HorizontalAlign="Center" VerticalAlign="Middle"></HeaderStyle>
<ItemStyle Height="20px" HorizontalAlign="Left" VerticalAlign="Middle" BorderColor="#CCCCCC" Width="100px" />
</asp:BoundField>
<asp:BoundField HeaderStyle-Width="150px" HeaderText="Name for Analysis Print" DataField="Name_for_Analysis_Print">
<HeaderStyle Height="30px" HorizontalAlign="Center" VerticalAlign="Middle"></HeaderStyle>
<ItemStyle Height="20px" HorizontalAlign="Left" VerticalAlign="Middle" BorderColor="#CCCCCC" Width="100px" />
</asp:BoundField>
<asp:BoundField HeaderStyle-Width="150px" HeaderText="Remark" DataField="Remark">
<HeaderStyle Height="30px" HorizontalAlign="Center" VerticalAlign="Middle"></HeaderStyle>
<ItemStyle Height="20px" HorizontalAlign="Left" VerticalAlign="Middle" BorderColor="#CCCCCC" Width="100px" />
</asp:BoundField>
<asp:BoundField HeaderStyle-Width="150px" HeaderText="IsFerrous" DataField="IsFerrous" HeaderStyle-CssClass="hide" ItemStyle-CssClass="hide">
<HeaderStyle Height="30px" HorizontalAlign="Center" VerticalAlign="Middle"></HeaderStyle>
<ItemStyle Height="20px" HorizontalAlign="Left" VerticalAlign="Middle" BorderColor="#CCCCCC" Width="100px" />
</asp:BoundField>
<asp:ButtonField ButtonType="Link" CausesValidation="false" HeaderText="Edit" ControlStyle-ForeColor="blue" ControlStyle-Width="50px" CommandName="Select" Text="Edit">
<ControlStyle ForeColor="Blue"></ControlStyle>
<ItemStyle Height="30px" HorizontalAlign="Center" VerticalAlign="Middle" BorderColor="#CCCCCC" Width="50px" />
</asp:ButtonField>
<asp:TemplateField HeaderText="Delete">
<ControlStyle ForeColor="Blue"></ControlStyle>
<ItemStyle Height="30px" HorizontalAlign="Center" VerticalAlign="Middle" BorderColor="#CCCCCC" Width="50px" />
<ItemTemplate>
<asp:LinkButton ID="lnkDelete" OnClientClick="javascript:scroll(0,0);" runat="server" CommandName="cmdDelete">Delete</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField HeaderStyle-Width="150px" HeaderText="Customer Id" DataField="Customer_Id" HeaderStyle-CssClass="hide" ItemStyle-CssClass="hide" />
<asp:TemplateField HeaderText="Print Work Order">
<ControlStyle ForeColor="Blue"></ControlStyle>
<ItemStyle Height="30px" HorizontalAlign="Center" VerticalAlign="Middle" BorderColor="#CCCCCC" Width="50px" />
<ItemTemplate>
<asp:LinkButton ID="lnkPrint" runat="server" CommandName="cmdPrint">Print</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Print Internal Challan">
<ControlStyle ForeColor="Blue"></ControlStyle>
<ItemStyle Height="30px" HorizontalAlign="Center" VerticalAlign="Middle" BorderColor="#CCCCCC" Width="50px" />
<ItemTemplate>
<asp:LinkButton ID="lnkPrintchallan" runat="server" CommandName="cmdPrintChallan">Print</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField HeaderStyle-Width="150px" HeaderText="Uploaded_Doc" DataField="Uploaded_Doc">
<HeaderStyle Height="30px" HorizontalAlign="Center" VerticalAlign="Middle" CssClass="hidden"></HeaderStyle>
<ItemStyle Height="20px" HorizontalAlign="Left" VerticalAlign="Middle" CssClass="hidden" BorderColor="#CCCCCC" Width="100px" />
</asp:BoundField>
<asp:BoundField HeaderStyle-Width="150px" HeaderText="IsNon_NABL" DataField="IsNon_NABL" HeaderStyle-CssClass="hide" ItemStyle-CssClass="hide" />
</Columns>
<EditRowStyle BorderColor="#CCCCCC" />
<HeaderStyle BackColor="DimGray" ForeColor="White"></HeaderStyle>
<PagerSettings PageButtonCount="5" />
<PagerStyle HorizontalAlign="Right" CssClass="GridPager" />
</asp:GridView>
aspx.cs页面如下
aspx.cs page as follows
DataTable dt1 = new DataTable();
dt1 = (DataTable)ViewState["DataTable"];
gvpdf.DataSource = dt1;
gvpdf.DataBind();
Response.ContentType = "application/pdf";
Response.AddHeader("content-disposition", "attachment; filename=WorkOrder.pdf");
Response.Cache.SetCacheability(HttpCacheability.NoCache);
StringWriter s_w = new StringWriter();
HtmlTextWriter h_w = new HtmlTextWriter(s_w);
gvpdf.RenderControl(h_w);
gvpdf.HeaderRow.Style.Add("width", "15%");
gvpdf.HeaderRow.Style.Add("font-size", "10px");
gvpdf.Style.Add("text-decoration", "none");
gvpdf.Style.Add("font-family", "Arial, Helvetica, sans-serif;");
gvpdf.Style.Add("font-size", "8px");
StringReader sr = new StringReader(s_w.ToString());
Document pdfDoc = new Document(PageSize.A4, 10f, 10f, 10f, 0f);
HTMLWorker htmlparser = new HTMLWorker(pdfDoc);
PdfWriter.GetInstance(pdfDoc, Response.OutputStream);
pdfDoc.Open();
// Paragraph title = new Paragraph("Delta Metallurgical Laboratory & Services", new Font(Font.FontFamily.TIMES_ROMAN, 14f, Font.BOLD));
// title.Alignment = Element.ALIGN_CENTER;
// pdfDoc.Add(title);
// pdfDoc.Add(new Paragraph(" Unpaid Bill Report", new Font(Font.FontFamily.TIMES_ROMAN, 12f, Font.BOLD)));
// pdfDoc.Add(new Paragraph("."));
htmlparser.Parse(sr);
pdfDoc.Close();
Response.Write(pdfDoc);
Response.End();
推荐答案
打印到PDF打印驱动程序。
可以做客户端(由客户端);或者服务器端。
生成的文件可以从任何地方拾取。
Print to a "PDF PRINT DRIVER".
Can be done client (by the client); or server side.
The resulting file can be "picked up" from wherever for whatever.
https://www.aspsnippets.com/Articles/Export -GridView-To-Word-Excel-PDF-CSV-Formats-in-ASP.Net.aspx [ ^ ]
这将帮助你。检查它。
https://www.aspsnippets.com/Articles/Export-GridView-To-Word-Excel-PDF-CSV-Formats-in-ASP.Net.aspx[^]
This will help you.pelase check it.
这篇关于我想以PDF格式下载gridview的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文