使用Ajax标签容器将asp.net网页转换为pdf
本文关键字:网页 net 转换 pdf asp Ajax 标签 使用 | 更新日期: 2023-09-27 18:17:28
我正在创建一个网站,其中有太多的数据导入和导出,用户所有的数据都显示在ajax标签容器,我的问题是,当我试图导出这些数据在PDF它显示以下错误:
Script control 'TabPanel1' is not a registered script control. Script controls must be registered using RegisterScriptControl() before calling RegisterScriptDescriptors().
参数名称:scriptControl
我使用iTextSharp
dll库用于导出pdf中选项卡面板中包含的所有数据在代码端,我声明了所有的名称空间:
using System.IO;
using System.Collections.Generic;
using System.Text;
using iTextSharp.text;
using iTextSharp.text.html.simpleparser;
using iTextSharp.text.pdf;
并设置导出页面为PDF的代码:
protected void pdf_Click(object sender, EventArgs e)
{
Response.ContentType = "application/pdf";
Response.AddHeader("content-disposition", "attachment;filename=TestPage.pdf");
Response.Cache.SetCacheability(HttpCacheability.NoCache);
StringWriter sw = new StringWriter();
HtmlTextWriter hw = new HtmlTextWriter(sw);
this.Page.RenderControl(hw);
StringReader sr = new StringReader(sw.ToString());
Document pdfDoc = new Document(PageSize.A4, 10f, 10f, 100f, 0f);
HTMLWorker htmlparser = new HTMLWorker(pdfDoc);
PdfWriter.GetInstance(pdfDoc, Response.OutputStream);
pdfDoc.Open();
htmlparser.Parse(sr);
pdfDoc.Close();
Response.Write(pdfDoc);
Response.End();
}
但是显示上面的错误,有没有人可以帮助我:
将控件的registerWithScriptManager属性设置为false(registerWithScriptManager ="false")
你可能需要输入它,通常在属性窗格中没有位置。