浅谈ASP.NET报表控件
OWC似乎使用者居多,但看见有网友在帖中抱怨OWC在使用时需要许可证书,于是将其排除,我可不想BOSS在看报表时弹出一个“没有许可证书”的窗口。
接着找到了ComponentOne的Web chart做出的各种效果图,效果极佳。我一下子被迷住了,决定就是它,于是马不停蹄的下了最新版100多M的安装文件,又花一上午找了个可以用的注册码,再找了篇教程,OK万事俱备,兴匆匆的开始写代码。需求不复杂,在一个页面上画出多条折线图即可,根据以往经验,这种大型商业共享软件在官方站点上看两个Example顶多一小时绝对能搞定的。但结果让我非常的恼火,官方的Example简单的它偏不提供,弄些什么AJAX的,一大堆实现辅助效果的代码,你要找的核心的那三四行打死也找不到,好像就怕你一下子把它的Example看明白了。历来讨厌这种软件。于是卸载、删除......等全部弄完,一天过去了。
还好,后来找到了Web Chart。代码超简洁,效果也还不错,写些简单的ASP.NET报表控件示例供大家参考:
ASP.NET报表控件一、折线图

- //引用命名空间
- using WebChart;
- //定义一个颜色数组,供循环时为不同的记录填充不同的颜色
- private string[] myColor = new string[]
- {
- "Tomato",//西红柿
- "Black",
- "Gold",
- "Blue",
- "Green",
- "Orange",
- "Pink",//粉红
- "Violet",//紫罗兰
- "Orchid",//淡紫色
- "Lime",//亮绿
- "Tan",//茶色
- "Red",
- "Navy"//橘红
- };
- //用静态方式示例了画出一条两个点的最简单折线.实际项目据此做循环而以.
- private void doIt()
- {
- //创建折线对象
- LineChart myChart = new LineChart();
- //为折线填充颜色
- myChart.Line.Color = Color.FromName(myColor[0]);
- myChart.Fill.Color = Color.FromName(myColor[0]);
- myChart.LineMarker = new DiamondLineMarker(8, Color.FromName(myColor[0]), Color.FromName(myColor[0]));
- //图例说明
- myChart.Legend = "折线一";
- //添加第一个点,参数一为x座标上的名称,参数二为y座标上的值
- myChart.Data.Add(new ChartPoint("一", float.Parse("100")));
- //添加第二个点
- myChart.Data.Add(new ChartPoint("二", float.Parse("200")));
- //chart为控件ID
- this.chart.Charts.Add(myChart);
- this.chart.RedrawChart();
- }
ASP.NET报表控件二、柱状图

- //颜色数组
- private string[] myColor = new string[]
- {
- "Fuchsia",
- "Black",
- "Gold",
- "Blue",
- "HotPink",
- "Orange",
- "Peru",
- "DodgerBlue",
- "Lime",
- "Tan",
- "Red",
- "GreenYellow",
- "DarkGreen",
- "DimGray",
- "Orchid"
- };
- //调用该方法生成柱状图
- private void bindchart()
- {
- //获取一个DataTable,具体函数略...
- DataTable dt = this.getdt();
- if (dt != null)
- {
- if (dt.Rows.Count > 0)
- {
- //遍历DataTable为每条记录生成一个柱状
- for (int i = 0; i < dt.Rows.Count; i++)
- {
- //创建对象
- ColumnChart mychart = new ColumnChart();
- //设置柱子宽度
- mychart.MaxColumnWidth = 48;
- //颜色
- mychart.Fill.Color = Color.FromName(this.myColor[i]);
- //在柱子上显示数量
- mychart.DataLabels.Visible = true;
- //数量的字体
- mychart.DataLabels.Font = new Font("Verdana", 14);
- //添加
- mychart.Data.Add(new ChartPoint("", float.Parse(dt.Rows[i]["num"].ToString())));
- //备注
- mychart.Legend = dt.Rows[i]["name"].ToString();
- this.chart.Charts.Add(mychart);
- }
- //辅助设置
- //背景色
- chart.Background.Color = Color.FromArgb(165, 0, 16);
- chart.YAxisFont.ForeColor = Color.FromArgb(165, 0, 16);
- chart.XAxisFont.ForeColor = Color.FromArgb(165, 0, 16);
- //内部线条
- chart.Border.Color = Color.FromArgb(200, 200, 200);
- //边框样式
- chart.BorderStyle = BorderStyle.None;
- //y最大值
- double max = double.Parse(dt.Compute("MAX(num)","").ToString());
- //递增值
- int intv = 2;
- //数量小于16的情况
- if (max < 16)
- {
- max = 16;
- }
- //大于16的情况
- else
- {
- intintv = int.Parse(Math.Ceiling(max/8).ToString());
- max += intv;
- }
- //设置Y轴终点值
- chart.YCustomEnd = int.Parse(max.ToString());
- //y递增值
- chart.YValuesInterval = intv;
- //生成
- this.chart.RedrawChart();
- }
- }
- }
Web Chart为免费ASP.NET报表控件,需要的朋友可去官方地址下载:http://www.carlosag.net/Tools/WebChart/Default.aspx,上面还有很多效果和代码示例。
浅谈ASP.NET报表控件的更多相关文章
- (转)浅谈ASP.NET报表控件
项目中有报表图形化的需求, 于是开始在网上找第三方chart控件.因时间紧迫,大至确定了几个候选:一.Office带的OWC控件:二.ComponentOne:三.Web Chart.本文将讲解ASP ...
- 浅谈WPF中对控件的位图特效(WPF Bitmap Effects)
原文:浅谈WPF中对控件的位图特效(WPF Bitmap Effects) -------------------------------------------------------------- ...
- 浅谈简单实现file控件的图片预览,裁剪和上传。
1.图片预览之FileReader对象 FileReader 对象允许Web应用程序异步读取存储在用户计算机上的文件(或原始数据缓冲区)的内容,使用File或Blob对象指定要读取的文件或数据 ...
- 在ASP.NET MVC 中使用ActiveReports报表控件
随着MVC模式的广泛运用,对Web应用系统的开发带来了巨大的影响,我们好像又回到了原来的ASP时代,视乎这是一种后退而不是一种进步,不过MVC模式给我们带来的影响不仅限于我们所看到的这一点..MVC看 ...
- 【ASP.NET MVC系列】浅谈ASP.NET 页面之间传值的几种方式
ASP.NET MVC系列文章 [01]浅谈Google Chrome浏览器(理论篇) [02]浅谈Google Chrome浏览器(操作篇)(上) [03]浅谈Google Chrome浏览器(操作 ...
- 【ASP.NET MVC系列】浅谈ASP.NET MVC运行过程
ASP.NET MVC系列文章 [01]浅谈Google Chrome浏览器(理论篇) [02]浅谈Google Chrome浏览器(操作篇)(上) [03]浅谈Google Chrome浏览器(操作 ...
- ActiveReports 报表控件官方中文入门教程 (1)-安装、激活以及产品资源
本系列文章主要是面向初次接触 ActiveReports 产品的用户,可以帮助您在三天之内轻松的掌握ActiveReports控件的基本使用方法,包括安装.激活.创建报表.绑定数据源以及发布等内容.本 ...
- ActiveReports 报表控件官方中文入门教程 (2)-创建、数据源、浏览以及发布
本篇文章将阐述首次使用 ActiveReports 报表控件 的方法,包括添加报表文件.绑定数据源以及如何发布报表等内容. ActiveReports 报表控件官方中文入门教程 (1)-安装.激活以及 ...
- 在网页中编辑报表的报表设计器Stimulsoft Reports Designer.Web报表控件
Stimulsoft Reports Designer.Web报表控件是一款网页报表设计器.您想在网页中编辑您的报表吗?现在是可能的! Stimulsoft Reports Designer.Web ...
随机推荐
- web.xml中常见配置解读
文章转自:http://blog.csdn.net/sdyy321/article/details/5838791 有一般XML都必须有的版本.编码.DTD <web-app>下子元素&l ...
- Ubuntu kylin系统改中文系统文件名为英文
刚装好系统,将使用语言改成了中文,结果重启后,提示是否将文件系统的名字改为新的,我一不注意,点了是...这样,在以后使用终端的时候,会有中文来干扰,所以需要改回英文. 方法如下: 输入两个命令即可: ...
- WPF:将HTML RGB颜色值转化为Color对象的两种方式
(1)方式一: Color color1 = (Color)System.Windows.Media.ColorConverter.ConvertFromString("#E0E0E0&qu ...
- 算法系列6《MAC》
1. 简介 MAC是使用命令的所有元素(包括命令头)产生的.一条命令的完整性,包括命令数据域(如果存在的话)中的数据元,通过安全报文传送得以保证.按照如下的方式使用单重或三重DEA加密方式产生MAC: ...
- echo换行的蛋疼事
openstack@openstack:~$ echo "abc" | shasum03cfd743661f07975fa2f1220c5194cbaff48451 -而使用Ja ...
- Swift计算文本宽高
iOS 8 开始可以配合 AutoLayout 自动估算文本的高度,但是当 Cell 比较复杂的时候,还会需要手动去计算.首先声明一个样式 var TextStyle : [String : NSOb ...
- 跨域访问-需要设置HTTP响应标头设置
跨域访问-需要设置HTTP响应标头设置 前提:服务端网站的配置(被请求的网站) 1.需要在IIS服务器站点的功能视图中设置HTTP响应标头: 2.双击“HTTP响应标头”进入设置界面 3.点击右侧添加 ...
- Hadoop入门学习随笔
推荐视频:慕课网http://www.imooc.com/video/8107 ===Hadoop是什么? 开源的.分布式存储+分布式计算平台. http://hadoop.apache.org == ...
- php远程图片抓取存放到本地路径并生成缩略图
private function _getcontent($content) { $img_dir='../Public/Img/Ycimg'; //远程图片抓取存放 ...
- Linux内核内存管理
<Linux内核设计与实现>读书笔记(十二)- 内存管理 内核的内存使用不像用户空间那样随意,内核的内存出现错误时也只有靠自己来解决(用户空间的内存错误可以抛给内核来解决). 所有内核 ...