欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

C#利用ReportViewer生成报表

程序员文章站 2023-11-17 10:06:22
本文主要是利用微软自带的控件reportviewer进行报表设计的小例子,具体内容如下 涉及知识点: reportviewer :位于microsoft.reporti...

本文主要是利用微软自带的控件reportviewer进行报表设计的小例子,具体内容如下

涉及知识点:

reportviewer :位于microsoft.reporting.winforms命名空间, 主要用于报表的显示
report:报表,以rdlc结尾的文件,可视化设计报表模板。
报表数据:内置字段,参数,图像,数据集(本报表主要使用参数,和数据集)
reportparameter:使用名称和值实例化新的报表参数
reportdatasource:报表的数据源与datatable对象联系起来

效果图如下:

C#利用ReportViewer生成报表

相关代码如下:

/// <summary>
  /// 设置报表
  /// </summary>
  private void setreport()
  {
   //第一步:清除之前的数据
   this.rptview.localreport.datasources.clear();
   //第二步:指定报表路径
   this.rptview.localreport.reportpath = "report2.rdlc";
   //第三步:构造新的datatable
   datatable dt = new datatable("datatable1");
   dt.columns.add("name");
   dt.columns.add("score");
   dt.columns.add("id");
   dt.rows.add(new object[] { "语文", 80, "y0001" });
   dt.rows.add(new object[] { "数学", 75, "s0001" });
   dt.rows.add(new object[] { "英文", 96, "e0001" });
   //名称不能写错,和报表中的数据集名称一致
   reportdatasource rdsitem = new reportdatasource("dataset1", dt);
   //此处可以有多个数据源
   this.rptview.localreport.datasources.add(rdsitem);
   //第四步:构造参数
   list<reportparameter> lstparameter = new list<reportparameter>() {
    new reportparameter("title",this.txttitle.text),
    new reportparameter("id",this.txtid.text),
    new reportparameter("name",this.txtname.text),
    new reportparameter("age",this.txtage.text),
    new reportparameter("sex",this.txtsex.text),
    new reportparameter("salary",this.txtsalary.text),
    new reportparameter("depart",this.txtdepart.text)
   };
   this.rptview.localreport.setparameters(lstparameter);
   this.rptview.zoommode = zoommode.percent;
   this.rptview.zoompercent = 100;
   //第五步:刷新报表
   this.rptview.refreshreport();
  }

源码下载链接

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。