C#利用ReportViewer生成报表

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

涉及知识点:

ReportViewer :位于Microsoft.Reporting.WinForms命名空间, 主要用于报表的显示
Report:报表,以rdlc结尾的文件,可视化设计报表模板。
报表数据:内置字段,参数,图像,数据集(本报表主要使用参数,和数据集)
ReportParameter:使用名称和值实例化新的报表参数
ReportDataSource:报表的数据源与DataTable对象联系起来

效果图如下:

相关代码如下:

/// <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();
  }

源码下载链接

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

(0)

相关推荐

  • C#删除UL LI中指定标签里文字的方法

    本文实例讲述了C#删除UL LI中指定标签里文字的方法.分享给大家供大家参考,具体如下: 现在需求越来越变态,但是做代码只能尽量满足,这里先是扣去ul和li中的超链接里的文字 PromptHtml = GetData.GetHTTPInfo(Config.Prompt_Url, "utf-8"); PromptHtml = PromptHtml.Replace("<ul><li>", ""); PromptHtml=Pro

  • C#正则表达式匹配与替换字符串功能示例

    本文实例讲述了C#正则表达式匹配与替换字符串功能.分享给大家供大家参考,具体如下: 事例一:\w+=>[A-Za-z1-9_],\s+=>任何空白字符,()=>捕获 string text = @"public string testMatchObj string s string match "; string pat = @"(\w+)\s+(string)"; // Compile the regular expression. Regex

  • 详解c# .net core 下的网络请求

    本文章是在VS2017的环境下,.net core 1.1版本以上. 在这期间,由于.net core 并不基于IIS,我们的过去的网络请求代码在.net core框架下,有可能会出现不兼容,报错的现象.这里大致介绍下在.net core 下如何进行http请求,主要仍然是GET和POST方法,有错误的地方,欢迎指正! 先来说POST,POST我实现了三种方法,前两种基于的原理是完全一致的,后面的有些小小的差异,但他们的本质都是http请求,本质上是无区别的,只是实现方法有所不同. 废话不多说,

  • C#贪吃蛇游戏实现分析

    今天无聊突发奇想做个贪吃蛇,虽然网上很多这东西了,不过自己写的感觉还行吧 贪吃蛇分析 游戏规则: 1.蛇起始长度5,每吃一个食物增加1,最大15过关 2.蛇用蓝色表示,食物用绿色,障碍物用黑色 3.当蛇碰到自己.墙壁.障碍物则游戏失败 4.方向键控制蛇的移动方向,蛇不可反方向移动,如正在向上移动,不能马上向下,只能向左.右.上运动 5.每过关一次速度提升一次 大概思路: 1.地图用网格的形式表示,蛇由方格组成,保存在list中 2.1中提到了方格,方格保存的内容有,颜色,坐标,是否可以通过,是否

  • JS和C#实现的两个正则替换功能示例分析

    本文实例讲述了JS和C#实现的两个正则替换功能.分享给大家供大家参考,具体如下: 应用实例1: 待处理字符串:str="display=test name=mu display=temp" 要求:把display=后的值都改成localhost JS处理方法: str.replace(/display=\w*/g,"display=localhost"); C#处理方法: Regex reg=new Regex(@"display=\w*");

  • C#动态创建button按钮的方法实例详解

    C#动态创建button按钮的方法实例详解 C#编程中经常需要动态创建,本文主要介绍C#动态创建button按钮的方法,涉及C#按钮属性动态设置的相关技巧,以供借鉴参考.具体实现方法如下: 例子: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.T

  • C#利用ReportViewer生成报表

    本文主要是利用微软自带的控件ReportViewer进行报表设计的小例子,具体内容如下 涉及知识点: ReportViewer :位于Microsoft.Reporting.WinForms命名空间, 主要用于报表的显示 Report:报表,以rdlc结尾的文件,可视化设计报表模板. 报表数据:内置字段,参数,图像,数据集(本报表主要使用参数,和数据集) ReportParameter:使用名称和值实例化新的报表参数 ReportDataSource:报表的数据源与DataTable对象联系起来

  • python自动化之如何利用allure生成测试报告

    Allure测试报告框架帮助你轻松实现"高大上"报告展示.本文通过示例演示如何从0到1集成Allure测试框架.重点展示了如何将Allure集成到已有的自动化测试工程中.以及如何实现报表的优化展示.Allure非常强大,支持多种语言多种测试框架,无论是Java/Python还是Junit/TestNG,其他语言或者框架实现的流程和本文一致,具体配置参照各语言框架规范 安装 安装allure Windows用户: scoop install allure    (需要先下载并安装Scoo

  • 详解如何利用Python实现报表自动化

    目录 Excel的基本组成 一份自动化报表的流程 报表自动化实战 当日各项指标的同环比情况 当日各省份创建订单量情况 最近一段时间创建订单量趋势 将不同的结果进行合并 本篇文章将带你了解报表自动化的流程,并教你用Python实现工作中的一个报表自动化实战,篇幅较长,建议先收藏,文章具体的目录为: 1.Excel的基本组成 2.一份报表自动化的流程 3.报表自动化实战 - 当日各项指标同环比情况 - 当日各省份创建订单量情况 - 最近一段时间创建订单量趋势 4.将不同的结果进行合并 - 将不同结果

  • 利用python生成一个导出数据库的bat脚本文件的方法

    实例如下: # 环境: python3.x def getExportDbSql(db, index): # 获取导出一个数据库实例的sql语句 sql = 'mysqldump -u%s -p%s -h%s -P%d --default-character-set=utf8 --databases mu_ins_s%s > %s.s%d.mu_ins_%d.sql' %(db['user'], db['pwd'], db['host'], db['port'], index, db['serv

  • Java利用Zxing生成二维码的简单实例

    Zxing是Google提供的关于条码(一维码.二维码)的解析工具,提供了二维码的生成与解析的方法,现在我简单介绍一下使用Java利用Zxing生成与解析二维码 1.二维码的生成 1.1 将Zxing-core.jar 包加入到classpath下. 1.2 二维码的生成需要借助MatrixToImageWriter类,该类是由Google提供的,可以将该类拷贝到源码中,这里我将该类的源码贴上,可以直接使用. import com.google.zxing.common.BitMatrix; i

  • javascript操作excel生成报表全攻略

    最近做一个项目,用到了javascript操纵excel以生成报表,下面是标有详细注解的实例 复制代码 代码如下: <html> <head> <script language="javascript" type="text/javascript"> </script><script language="javascript" type="text/javascript"&

  • 利用JS生成博文目录及CSS定制博客

    本文实例为大家介绍了利用JS生成博文目录及CSS定制博客的方法,分享给大家供大家参考,具体内容如下 1.JS代码 想要生成目录,许多都说需要JS修改权限,那个这里就直接进入设置页面,找到下方的联系邮箱直接发去就行了,工作人员回复的还是很快的. 拿到权限之后,下面就是将编(搜)写(寻)的JS代码放在页脚HTML代码的方框内,然后点击保存就可以了.要注意目录的生成是几级标题,这一点可是很重要的.JS代码如下,基本没有变化,拷贝了原作者的写法,可以生成二级目录,分别为h2和h3,这点需要注意. 综合来

  • jsp利用echarts实现报表统计的实例

    echarts用来做数据报表的一个展示效果了,这里我们来给各位介绍一个java/jsp利用echarts实现报表统计的例子,例子非常的简单只是把数据调出来给echarts即可了. 开始上代码. 首先是tag,这个东西,大学之后,几乎不怎么用了,没想到现在又用到了. <%@ tag pageEncoding="UTF-8" isELIgnored="false" body-content="empty"%> <%--自定义div容

  • PHP利用imagick生成组合缩略图

    先给大家炫下效果图,如果大家觉得还很满意,请继续往下阅读: 这里说的imagick 是 ImageMagick 在PHP下的扩展.使用pecl安装起来那叫一个轻松简单一条命令就搞定: 复制代码 代码如下: sudo pecl install imagick (扩展装好后还是要在php.ini中加上extension=imagick.so,然后记得重启apache或php-fpm服务.) 最近有个需求是要把多张图片组合起来生成缩略图,刚好用用这个强大的imagick扩展. 这个需求是要这样生成缩略

  • 利用PHP生成静态html页面的原理

    前言 如果每次用户点击动态链接的时候都会对服务器发送数据查询的要求,对于一个访问量可能达百万千万级别的网站来说 这无疑是服务器一个大大的负担,所以把动态数据转换成静态html页面就成了节省人力物力的首选因为此前没有相应的经验,所以这篇文章和大家分享利用PHP生成静态html页面的原理和方法,有需要的可以一起来看看. 一.思路分析 其实,实现静态页面生成功能的原理很简单,主要利用几个常见的PHP文件操作函数对文件进行操作,其思路流程如下: 生成静态页面流程图 二.功能实现 设置example.ht

随机推荐