葡萄城ActiveReports报表与Visual Studio完美集成,给我们带来更为灵活易用的报表定制和自定义控件嵌入支持,除了可以在报表中使用葡萄城ActiveReports报表内置控件外,您还可以在报表中添加任意的第三方 .NET 控件,从而满足您更多的报表扩张能力的需求。本文展示的是在葡萄城ActiveReports报表的区域报表中使用 C1Gauge  for Windows  Forms 和  C1Chart  for Windows Forms 控件。

1、创建报表文件

在应用程序中创建一个名为 rptControls1.cs 的葡萄城ActiveReports报表文件,ActiveReports 区域报表(基于代码)。在工程中添加 C1.Win.C1Chart.2.dll 和 C1.Win.C1Gauge.2.dll 引用。

2、设计报表界面

需要注意的是在 WinForms 和 ASP.NET 程序中稍微有点不同的是,在 WinForms 应用程序开发时,切换到报表设计界面,在 Visual Studio 工具箱中会显示您当前环境中所有可用的 WinForms 平台控件,此时,我们可以直接将需要的任意其他第三方控件拖拽到 ActiveReports 区域报表设计界面中;在 ASP.NET 程序开发时,Visual Studio 工具箱中就不会显示 WinForms 平台的控件,所以不能直接将第三方控件添加到报表设计界面,此时,我们需要将 Picture 控件添加到报表设计界面,然后在后台代码中实现第三方控件的加载操作。

切换到报表设计界面,并将 ActiveReports 7 区域布局报表分类下的 RichTextBox 和 Picture 控件添加到报表中。

切换到报表后台代码视图,在报表的 ReportStart 事件中加载第三方控件,代码如下:

// 添加 C1Gauge 控件 private void AddGauge1() { C1.Win.C1Gauge.C1Gauge c1Gauge1 = new C1.Win.C1Gauge.C1Gauge(); c1Gauge1.Load(string.Format(@"{0}\Data\C1RadialGauge1.xml", BasePath)); c1Gauge1.BackColor = Color.White; c1Gauge1.Gauges[0].Value = 80; c1Gauge1.Gauges[1].Value = 88; c1Gauge1.Gauges[2].Value = 75;


picture1.Image = c1Gauge1.GetImage(450,300); }


// 添加 C1Chart 控件 private void AddChart1() { C1.Win.C1Chart.C1Chart c1Chart = new C1.Win.C1Chart.C1Chart(); c1Chart.LoadChartFromFile(string.Format(@"{0}Data\C1Chart1.chart2dxml", BasePath));


picture2.Image = c1Chart.GetImage(new Size(800,370)); }


private void rptControls1_ReportStart(object sender, EventArgs e) { AddGauge1(); AddChart1();


richTextBox1.LoadFile(string.Format(@"{0}Data\支持第三方控件.rtf", BasePath)); }

3、运行程序

在线演示及源码下载地址:

http://www.gcpowertools.com.cn/products/activereports_demo.htm

相关阅读:

【报表福利大放送】100余套报表模板免费下载

矩表 - 现代数据分析中必不可少的报表工具

ActiveReports 报表应用教程 (13)---嵌入第三方控件的更多相关文章

  1. ActiveReports 报表应用教程 (1)---Hello ActiveReports

    在开始专题内容之前,我们还是了解一下 ActiveReports 是一款什么产品:ActiveReports是一款在全球范围内应用非常广泛的报表控件,以提供.NET报表所需的全部报表设计功能领先于同类 ...

  2. duilib教程之duilib入门简明教程15.自绘控件

    在[2013 duilib入门简明教程 -- 复杂控件介绍 (13)]中虽然介绍了界面设计器上的所有控件,但是还有一些控件并没有被放到界面设计器上,还有一些常用控件duilib并没有提供(比如菜单控件 ...

  3. ActiveReports 报表应用教程 (5)---解密电子商务领域首张电子发票的诞生(套打报表)

    6月27日京东商城发布了中国电子商务领域首张电子发票,同时宣布相关系统正式上线,这标志着中国电子商务的步伐又向前迈出了重要的一步.目前“电子发票”覆盖的服务范围是在北京地区购买图书.音像商品的个人消费 ...

  4. 教程-Delphi第三方控件安装卸载指南

    1 只有一个DCU文件的组件.DCU文件是编译好的单元文件,这样的组件是作者不想把源码公布.一般来说,作者必须说明此组件适合Delphi的哪种版本,如果版本不对,在安装时就会出现错误.也正是因为没有源 ...

  5. WPF第三方控件盘点

    WPF统一的编程模型.语言和框架,实现了界面设计人员和开发人员工作可以分离的境界,鉴于WPF强大的优势,且一直是开发者关注的地方,下面和大家分享基于WPF项目开发需要用到的第三方控件,包括业界最受好评 ...

  6. Delphi - 采用第三方控件TMS、SPComm开发串口调试助手

    第三方控件TMS.SPComm的下载与安装 盒子上可搜索关键字进行下载,TMS是.dpk文件,SPComm.pas文件: 安装方法自行百度,不做赘述. 通过TMS控件进行界面布局 界面预览: Delp ...

  7. 关于EasyUI DataGrid行编辑时嵌入时间控件

    本人做一个名为“安徽中控”项目时,为快速开发基础数据增删改模块,遂采用EasyUIDatagrid将所有增删改查的操作都集中于表格中,并且所有增删改查操作都集中于泛型对象,从而不必为每个表写具体的增删 ...

  8. 好用的第三方控件,Xcode插件(不断更新)

    第三方控件类:   1.提示框 MBProgressHUD: 是一款非常强大的.提供多种样式的提示框.使用起来简单.方便.可以在GitHub上查看具体的使用方法. https://github.com ...

  9. 基于MVC4+EasyUI的Web开发框架经验总结(13)--DataGrid控件实现自动适应宽带高度

    在默认情况下,EasyUI的DataGrid好像都没有具备自动宽度的适应功能,一般是指定像素宽度的,但是使用的人员计算机的屏幕分辨率可能不一样,因此导致有些地方显示太大或者太小,总是不能达到好的预期效 ...

随机推荐

  1. Docker三剑客之常用命令

    一.docker-machine 命令 说明 docker-machine create 创建一个 Docker 主机(常用-d virtualbox) docker-machine ls 查看所有的 ...

  2. 09-02 java 多态

    多态的前提.多态的特点 /* 多态:同一个对象(事物),在不同时刻体现出来的不同状态. 举例: 猫是猫,猫是动物. 水(液体,固体,气态). 多态的前提: A:要有继承关系. B:要有方法重写. 其实 ...

  3. SQLServer中的cross apply和FOR XML PATH

    参考: FOR XML PATH:http://www.cnblogs.com/doubleliang/archive/2011/07/06/2098775.html cross apply:http ...

  4. ADO.NET 4.5中的异步与流特性

    .NET 4.5为仍在选择直接与DataReader系列类打交道的.NET开发人员带来了一些新的异步与流特性支持.SqlDataReader允许开发人员在减少一些便利性的基础上获得更好的性能.例如,该 ...

  5. 全网最详细的zkfc启动以后,几秒钟以后自动关闭问题的解决办法(图文详解)

    不多说,直接上干货! 问题详情 情况描述如题所示,zkfc启动以后,几秒钟以后自动关闭. 解决办法: 1.检查下每台机器的时间是否同步: 2.检查下每台机器的防火墙是否关闭: 3.查看zkfc的日志路 ...

  6. [原创]EF架构随心所欲打造属于你自己的DbModel

    前言 我们都知道EF可以生成Dbmodel,系统生成的Model有时候并不是我们想要的,如何我们要生成自己的Model,那么久需要我们手动的去修改T4模版,T4是对“Text Template Tra ...

  7. Vue2.0-token权限处理

    token一种身份的验证,在大多数网站中,登录的时候都会携带token,去访问其他页面,token就想当于一种令牌.可以判断用户是否登录状态.本次页面是通过Element-ui搭建的登录界面 当用户登 ...

  8. PHP之高性能I/O框架:Libevent(二)

    Event扩展 Event可以认为是替代libevent最好的扩展,因为libevent已经很久不更新了,而Event一直在更新,而且Event支持更多特性,使用起来也比libevent简单. Eve ...

  9. kafka-java客户端连接

    使用java客户端, kafkaproducer, kafkaconsumer进行kafka的连接 注: 0.10 版本之后, 连接kafka只需要brokerip即可, 不需要zookeeper的信 ...

  10. SPI(Service Provider Interface)机制

    JAVA SPI 约定如下:当服务的提供者提供了服务接口的一种实现之后,在jar包的META-INF/services/ 目录中同时创建一个以服务接口命名的文件,该文件中的内容就是实现该服务接口的具体 ...