只是想知道是否可以在运行时对 RDLC 的表进行数据绑定。
我创建了一个报告,放置了一个表格控件,但是 VS 编译器说有必要设置一个数据集。
但我想使用在 C# 代码中创建的数据集将数据加载到该表中,而不是创建数据集和表适配器。
可能吗?
只是想知道是否可以在运行时对 RDLC 的表进行数据绑定。
我创建了一个报告,放置了一个表格控件,但是 VS 编译器说有必要设置一个数据集。
但我想使用在 C# 代码中创建的数据集将数据加载到该表中,而不是创建数据集和表适配器。
可能吗?
您需要一个用于报告的虚拟数据集。您可以在运行时加载数据来填充它。
对的,这是可能的。您可以在 ReportViewer 控件上重新绑定数据表。你可以使用任何你想要的数据表,只要它与你的 RDLC 文件中使用的表名匹配。
执行此操作的代码在 VB.NET 中如下所示:
ReportViewer1.Reset()
ReportViewer1.LocalReport.DataSources.Clear()
ReportViewer1.LocalReport.LoadReportDefinition(ms) 'Reload your definition (RDLC)
'Bind dataTables to the report viewer control (This is the 'dataset' it is asking about)
ReportViewer1.LocalReport.DataSources.Add(New ReportDataSource("DATANAME", DATATABLE))
ReportViewer1.RefreshReport()
使用 Dummy DataSet 或者您也可以在设计时将 XSLT 用于没有数据集的运行时报告。