为什么我没有在C#中的reportviewer中以表格格式获取数据表

时间:2018-07-06 04:49:18

标签: c# datatable rdlc reportviewer

我没有在报表查看器中获取我创建的数据表。我在报表查看器中获取报表参数,但未在表中获取报表参数。请帮助我解决此问题。预先感谢。

        DataTable dt = new DataTable("Type-1");
        dt.Columns.Add("Column1", typeof(string));
        dt.Columns.Add("Column2", typeof(string));
        dt.Columns.Add("Column3", typeof(string));
        dt.Columns.Add("Column4", typeof(string));
        dt.Columns.Add("Column5", typeof(string));

        dt.Rows.Add("0.4", "1", "3.0","0.95-1.0-1.05", "Test1");
        dt.Rows.Add("7.0", "1", "3.0","1.68-1.76-1.85", "Test2");

        var reportDataSource1 = new ReportDataSource("Type-1", dt);
        this.reportViewer1.LocalReport.DataSources.Add(reportDataSource1);
        this.reportViewer1.LocalReport.ReportEmbeddedResource = "Test.Report1.rdlc";

        reportViewer1.LocalReport.SetParameters(new ReportParameter("RP_SrNo", _SrNo));
        reportViewer1.LocalReport.SetParameters(new ReportParameter("RP_TestType", _TestType));
        reportViewer1.LocalReport.SetParameters(new ReportParameter("RP_Date", _Date));
        this.reportViewer1.RefreshReport();

1 个答案:

答案 0 :(得分:0)

您可以尝试使用数据集。请按照以下步骤 1.将新的数据集添加到项目中。 2.转到数据集和一个新的数据表。 3.在数据表上单击鼠标右键以添加列 4.在列上右键定义诸如dataTypes的属性 5.转到报表设计器以添加您刚创建的数据集。 6.在报告“数据”面板中,右键单击“数据集”,然后单击“添加数据集”。 7.给您的DataSet一个名称,即DataSet1->选择您先前创建的数据集的数据源-> Available Datasets选择您添加的dataTable。 8.设计报告->在报告上插入表格,然后选择要显示的数据。 9.现在,您的代码应如下所示。

//Report Source
this.reportViewer1.LocalReport.ReportEmbeddedResource = "Test.Report1.rdlc";

//Set Parameters
reportViewer1.LocalReport.SetParameters(new ReportParameter("RP_SrNo", _SrNo));
reportViewer1.LocalReport.SetParameters(new ReportParameter("RP_TestType", _TestType));
reportViewer1.LocalReport.SetParameters(new ReportParameter("RP_Date", _Date));

//Prepare datasource (These should be the same columns as on step 3)
DataTable dt = new DataTable("Type-1");
dt.Columns.Add("Column1", typeof(string));
dt.Columns.Add("Column2", typeof(string));
dt.Columns.Add("Column3", typeof(string));
dt.Columns.Add("Column4", typeof(string));
dt.Columns.Add("Column5", typeof(string));

dt.Rows.Add("0.4", "1", "3.0","0.95-1.0-1.05", "Test1");
dt.Rows.Add("7.0", "1", "3.0","1.68-1.76-1.85", "Test2");

//Add dataset as defined in step 7
var reportDataSource1 = new ReportDataSource("DataSet1", dt);
this.reportViewer1.LocalReport.DataSources.Add(reportDataSource1);
this.reportViewer1.RefreshReport();

希望有帮助。