【问题标题】:WinForms reportViewer (.NET 3.5) binding data from a DataTableWinForms reportViewer (.NET 3.5) 从 DataTable 绑定数据
【发布时间】:2013-04-14 04:08:51
【问题描述】:

WinForms reportViewer (.NET 3.5) 从 DataTable 绑定数据

我正在尝试将动态创建的 DataTable 绑定到 reportViewer 控件。互联网上有很多关于这方面的教程,但它们似乎不适用于这个项目......(有关于堆栈溢出的相关问题,但解决方案在我的情况下不起作用)

这是显示报告按钮的事件处理程序:

    private void btn_ShowRwport_Click(object sender, EventArgs e)
    {
        //Set the date range for the report
        rptctn.SetDateRangeOne(listBox1.SelectedItem.ToString(), dateTimePicker_Start.Value, dateTimePicker_End.Value);

        //Get the report datatable
        DataTable dt = rptctn.GetReportTest(listBox1.SelectedItem.ToString());

        //Set the datagridview
        dataGridView1.DataSource = dt;

        //Set the reportViewer
        this.reportViewer1.LocalReport.DataSources.Clear();            
        Microsoft.Reporting.WinForms.ReportDataSource rprtDTSource = new Microsoft.Reporting.WinForms.ReportDataSource(dt.TableName, dt);
        this.reportViewer1.LocalReport.DataSources.Add(rprtDTSource);
        this.reportViewer1.RefreshReport();
    }

我知道 DataTable 正在正确重试,因为 dataGridView 工作...... https://docs.google.com/file/d/0B6b_N7sDgjmvZHpEYS1BWWhqZ3c/edit?usp=sharing

该项目有以下限制:

  • 由于客户端环境,必须使用 .NET 3.5。 (所以报告查看器 2008)

  • DataTable 和 ReportViewer 的创建在不同的包中(应用程序/表示层)

  • 我试图避免创建 .rdlc 文件,因为报告(数据表)具有可变数量的行/列。

有人知道我如何将动态创建的 DataTable 绑定到报表查看器吗?

【问题讨论】:

  • 你报告中的数据源是否与dt.TableName同名?
  • @JoeyGennari 我没有将数据源设置为reportViewer1(我认为这就是上面的代码所做的);同样正如我上面提到的,我在项目中没有任何 .rdlc 文件,我会将数据源设置为什么? dt.TableName 的值为空字符串。
  • 真正需要做的是动态创建一个RDLC文件并添加一个表。我从gotreportviewer.com 找到了一个带有一些代码的第 3 方示例,只需在页面右侧向下查看动态生成 RDLC - 表。
  • @JoeyGennari 这行得通,我只需要玩一会儿。如果您将上面所说的内容写为答案,我会将其标记为答案,谢谢。

标签: c# data-binding .net-3.5 datatable reportviewer2008


【解决方案1】:

您真正需要做的是动态创建一个 RDLC 文件并添加一个表。我从 gotreportviewer.com 找到了一个带有一些代码的第 3 方示例,只需在页面的右侧向下查看动态生成 RDLC - 表。

【讨论】:

    猜你喜欢
    • 2019-07-21
    • 2014-03-07
    • 2018-02-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-19
    • 2011-02-23
    相关资源
    最近更新 更多