我可以在运行时创建RDLC并对表进行数据绑定,而无需在设计时创建数据集吗?

时间:2009-10-26 17:14:50

标签: data-binding report rdlc

只是想知道是否可以在运行时对RDLC表进行数据绑定。

我已经创建了一个报表,放了一个表格控件,但VS编译器说有必要设置一个数据集。

但我想使用在C#代码中创建的数据集将数据加载到此表中,而不是创建数据集和表适配器。

有可能吗?

3 个答案:

答案 0 :(得分:3)

您需要为报告提供虚拟数据集。您可以在运行时加载数据来填充它。

答案 1 :(得分:3)

是的,这是可能的。 您可以在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()

答案 2 :(得分:2)

使用Dummy DataSet或您也可以在设计时使用XSLT进行运行时报告而不使用数据集。