【发布时间】:2015-10-20 00:37:08
【问题描述】:
我唯一需要的是在顶部添加公司名称以及今天的日期,但其他一切现在都对我有用。用户可以选择特定的行并以 pdf 格式导出选定的行,但我需要顶部的公司名称,请帮忙。谢谢
protected void ExportToPDF(object sender, EventArgs e)
{
using (StringWriter sw = new StringWriter())
{
using (HtmlTextWriter hw = new HtmlTextWriter(sw))
{
//Hide the Column containing CheckBox
GridView1.Columns[0].Visible = false;
foreach (GridViewRow row in GridView1.Rows)
{
if (row.RowType == DataControlRowType.DataRow)
{
//Hide the Row if CheckBox is not checked
row.Visible = (row.FindControl("chkSelect") as CheckBox).Checked;
// pnlBtn.Visible = true;
}
}
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();
}
}
}
【问题讨论】:
-
如果我没看错的话,您已经将一个 Grid 写入 HTML 转换为 PDF 并发送给客户端。那么,你有什么/哪里有问题?您是否未能在网格中添加带有名称/日期的行?您是否在向中间 HTML 添加 div 或文本时失败了?您是否未能配置 PdfWriter 添加页眉?到目前为止,您是否尝试过这些方法?