我有一个(rdlc)报告,其中包含一个表中的子报告。对于生成的每个子报表实例,LocalReport.SubreportProcessing
都会触发事件,这与文档一致。
但是,对于这些事件中的每一个,报告中似乎只使用了分配的第一个 DataTable。我可以验证是否 ReportFactory.ReturnNextDataTable
为每一行返回了适当的 DataTable,但似乎 DataTable 的第一个实例正在重复多次。
我已经尝试为每个调用(使用)清除报告数据源,e.DataSources.Clear()
但这没有区别。
这是我的代码:
void AddData(object sender, SubreportProcessingEventArgs e)
{
DataTable merged = ReportFactory.ReturnNextDataTable;
e.DataSources.Add(new ReportDataSource("RATES", merged)); //Subsequent DataTables ignored
}
我不禁觉得我从根本上走错了路。有任何想法吗?