【问题标题】:convert an asp.net webpage to pdf With Ajax Tab Container使用 Ajax 选项卡容器将 asp.net 网页转换为 pdf
【发布时间】:2014-08-11 06:58:17
【问题描述】:

我正在创建一个有太多数据导入和导出的网站,用户所有数据都显示在 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();
    }

但它显示上面的错误,任何人都可以帮助我:

【问题讨论】:

    标签: c# asp.net ajax pdf


    【解决方案1】:

    将控件的 registerWithScriptManager 属性设置为 false (registerWithScriptManager="false")

    您可能必须输入它,属性窗格中通常没有位置。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-25
      • 1970-01-01
      • 1970-01-01
      • 2013-11-05
      相关资源
      最近更新 更多