【问题标题】:Data in my dataset is not showing in my ReportViewer?我的数据集中的数据没有显示在我的 ReportViewer 中?
【发布时间】:2012-08-01 14:00:32
【问题描述】:

我有一个在 datagridview 中显示数据的程序。 datagridview 中的数据来自数据集中的表。数据在屏幕上看起来不错,所以我决定添加一种打印数据的方法。

我创建了一个新表单,添加了一个报表查看器控件,并设计了报表。我使用我的数据集作为报告的数据源。

我的问题是,当我转到我的报告所在的报告选项卡时,它显示我的报告只有标题,没有数据。好像我的数据集中没有数据!

所以,我的问题是,我忘了做什么?数据在那里,它显示在一个表单上(带有 datagridview),但它没有显示在 reportviewer 控件上(只有标题)。

实际上没有涉及编码。我刚刚制作了一个新表单,添加了 reportviewer 控件,设计了报表并告诉它使用我的数据集作为数据源。通常,这对我有用。我无法想象为什么它不起作用。

感谢您的帮助或建议!

这是我的问题的图像

http://i.stack.imgur.com/M6NrX.jpg

【问题讨论】:

  • 即使涉及的代码很少,它不工作的事实也意味着它可能有问题。没有看到它,任何人都无法真正提供帮助。

标签: c# visual-studio-2010 sql-server-2008 reporting


【解决方案1】:

这很可能是以下两个原因之一:
1.要么你需要在报表数据源中提供TableName(看看Datatable as datasource in ReportViewer
2. 或者你需要调用 RefreshReport()。

【讨论】:

    【解决方案2】:

    https://www.youtube.com/watch?v=hkDIDTNbA6M

    在调用报告之前再次将数据从数据库中添加到数据集中

    SqlConnection con = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=D:\typroject\TYPROJECT\TYPROJECT\logindb.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True");
    
        billDataSet b1 = new billDataSet();
    
        SqlDataAdapter s = new SqlDataAdapter("select * from TblOrder",con);
    
        s.Fill(b1,b1.Tables[0].TableName);
    
        ReportDataSource rds = new ReportDataSource("orders",b1.Tables[0]);
    
        this.a.LocalReport.DataSources.Clear();
    
        this.reportViewer1.LocalReport.DataSources.Add(rds);
    
        this.reportViewer1.LocalReport.Refresh();
    
        this.TblOrderTableAdapter.Fill(this.billDataSet.TblOrder, d1.ToString(), 
    
        d2.ToString(), companyid);
    
        this.reportViewer1.RefreshReport();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-11-22
      • 1970-01-01
      • 2021-07-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多