Tablix未显示使用“自定义”IEnumerable创建的DataSet

时间:2013-03-12 22:41:25

标签: c# winforms reportviewer rdlc

我想根据DataGridView的数据源列表打印报告。

我想使用Rdlc报告。我创建了报告,在其中添加了一个名为“DataSet”的数据集的Tablix。

然后,在报表查看器中,我只删除该DataSet,并添加一个包含我想要的列表(IEnumerable)的同名DataSet。问题是Tablix没有显示任何内容。我查看了互联网,但找不到与之相关的任何内容。另外,如何使用ReportViewer使字段可见或不可见?

这是我的代码(它在Form的Load事件中:

Sistema_financiero_Entities db = new Sistema_financiero_Entities();
IEnumerable<Cheque> cheques = db.Cheque.Where(x => x.id_cheque != 6).ToList();

ReportDataSource data = new ReportDataSource("DataSet", cheques);

try
{
    this.rpt_Viewer.LocalReport.DataSources.Add(data);
    this.rpt_Viewer.RefreshReport();
}

一些注意事项:db是Entity框架对象上下文。检查是列表(在这个例子中我只是从数据库中获取数据,但我将使用DataGridView数据源列表,我这样做只是为了测试它是否正常工作)。 rpt_Viewer是reportViewer。

1 个答案:

答案 0 :(得分:0)

更改IEnumerable<Cheque> cheques = db.Cheque.Where(x => x.id_cheque != 6).ToList();

List<Cheque> cheques = db.Cheque.Where(x => x.id_cheque != 6).ToList();工作得很好。