0

我正在开发一个使用 RDLC 报告的项目,我想使用包含一些公司信息的页眉和页脚的主报告,它与不同的数据集绑定,并且在报告的主体内我有一个子报告来显示报告内容,此子报表填充了不同报表的不同数据集。

一切正常,但是当子报表中有更多记录时,它分为分页,当我单击下一页时,它不工作并再次显示第一页。

Infacat 我错过了一项技术,但我无法识别它。

我绑定报告的代码如下:

private void LoadReport()
{
    var objAccess = new DataAccess();
    _dataSet = objAccess.CompanyGetAll(); 
    var mainReport = new StreamReader(Server.MapPath("~/Reports/ComanyInfo.rdlc"));
    ReportViewerTraineePayments.LocalReport.LoadReportDefinition(mainReport);
    ReportViewerTraineePayments.LocalReport.DataSources.Clear();
    ReportViewerTraineePayments.LocalReport.DataSources.Add(new ReportDataSource("DS_CompanyInfo", _dataSet.Tables[0]));

    var subReport = new StreamReader(Server.MapPath(DynamicReportName));
    ReportViewerTraineePayments.LocalReport.SubreportProcessing +=
        new SubreportProcessingEventHandler(localReport_SubreportProcessing);
    ReportViewerTraineePayments.LocalReport.LoadSubreportDefinition("Rpt_Content", subReport);
}

private void localReport_SubreportProcessing(object sender, SubreportProcessingEventArgs e)
{
    e.DataSources.Add(new ReportDataSource(DynamicDataSetName, DynamicReportDataSource.Tables[0]));
}
4

1 回答 1

0

我自己通过设置AsyncRendering="True"

protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { LoadReport(); } }

于 2013-10-12T05:12:32.523 回答