| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 5150 人关注过本帖, 2 人收藏
标题:Visual Studio 2010 Chart 探秘
只看楼主 加入收藏
wangnannan
Rank: 18Rank: 18Rank: 18Rank: 18Rank: 18
等 级:贵宾
威 望:87
帖 子:2546
专家分:9359
注 册:2007-11-3
结帖率:80.91%
收藏(2)
 问题点数:0 回复次数:13 
Visual Studio 2010 Chart 探秘
昨天晚上无聊 所以研究了下VS2010的Chart控件 在这里和大家分享了一下研究成果 不足之处 还望指教
(1)在数据中可以找到chart 控件
图片附件: 游客没有浏览图片的权限,请 登录注册

拖放到form中 设置一下 样式 和 Dock
chart可以设置向导数据源 这里比较简单 俺就不演示了
(2)控件拖放好 切换到代码界面
主要代码如下 数据库用的是pubs  呵呵 很简单吧 chart 确实给我们开发带来了很多方便 个人觉着和DEVEXPRESS比起来还是显得稚嫩了些
本人试过了 后台绑定数据源不支持DataSet 貌似只有在设置向导数据源时才支持 这点很不理解 。。。。

程序代码:
using System;
using System.Collections.Generic;
using using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;
using System.Windows.Forms.DataVisualization.Charting;

namespace WindowsFormsApplication9
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            //DataReader
            //string myConnectionString = "Data Source=.;Initial Catalog=pubs;User ID=sa;Pwd=×××××;";
            //string sql = "select discount 金额,discounttype from discounts";
            //SqlConnection conn = new SqlConnection(myConnectionString);
            //SqlCommand cmd = new SqlCommand(sql, conn);
            //cmd.Connection.Open();
            //SqlDataReader reader = cmd.ExecuteReader();
            //chart1.DataBindTable(reader, "discounttype");
            //cmd.Connection.Close();
            //foreach (Series series in chart1.Series)
            //{
            //    series.CustomProperties = "DrawingStyle=LightToDark";
            //}

            //数组 arraylist 也可以
            //int[] a = new int[] { 1,22,33,17};
            //chart1.DataBindTable(a);
           
            //泛型
            List<discounts> list =null;
            //datareader
            string myConnectionString = "Data Source=.;Initial Catalog=pubs;User ID=sa;Pwd=××××××;";
            string sql = "select discount 金额,discounttype from discounts";
            SqlConnection conn = new SqlConnection(myConnectionString);
            SqlCommand cmd = new SqlCommand(sql, conn);
            cmd.Connection.Open();
            SqlDataReader reader = cmd.ExecuteReader();
            if (reader.HasRows)
            {
                list = new List<discounts>();
            }
            while (reader.Read())
            {
                discounts _discounts = new discounts();
                _discounts.Discount = reader["金额"] == DBNull.Value ? 0 : decimal.Parse( reader["金额"].ToString().Trim());
                _discounts.Discounttype = reader["discounttype"] == DBNull.Value ? string.Empty : reader["discounttype"].ToString().Trim();
                list.Add(_discounts);
            }
            reader.Close();
            reader.Dispose();
            cmd.Connection.Close();
            //用于X轴显示的列名
            chart1.DataBindTable(list, "discounttype");
            //俺对比了一下 发现这里循环设置所有的渐变效果以及图标样式
            //【官方的解释是指定数据点的绘制样式】可以设置这几个值 Cylinder、 Emboss、 LightToDark、 Wedge、 Default。
           
            //帮助文档源代码是这样 俺试过没有这个属性所以修改下
            //foreach (Series series in chart1.Series)
            //{
            //    series.CustomAttributes = "DrawingStyle=LightToDark";
            //}
           
            //修改如下
            foreach (Series series in chart1.Series)
            {
                series.CustomProperties = "DrawingStyle=LightToDark";
                series.LegendText = "金额统计";
            }

        }
    }//类Form1结束
}//命名空间结束
运行结果 如下
图片附件: 游客没有浏览图片的权限,请 登录注册

附上代码
WindowsFormsApplication9.rar (79.06 KB)



[ 本帖最后由 wangnannan 于 2010-12-11 09:17 编辑 ]
搜索更多相关主题的帖子: Chart Visual Studio 探秘 
2010-12-11 09:13
iwanna2010
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:8
专家分:100
注 册:2010-10-27
收藏
得分:0 
学习了
2010-12-13 16:44
学士枫人
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2011-6-13
收藏
得分:0 
顶、、、、、、、、、、、、、
2011-06-18 20:11
lujcky
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2011-6-19
收藏
得分:0 
顶………………
2011-06-19 13:41
zhoufeng1988
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:北京
等 级:贵宾
威 望:27
帖 子:1432
专家分:6329
注 册:2009-5-31
收藏
得分:0 
顶你一下~
2011-06-20 09:17
lidong3754
Rank: 1
来 自:山西
等 级:新手上路
帖 子:6
专家分:0
注 册:2011-4-6
收藏
得分:0 
慢慢学习
2011-06-21 11:38
ghbjimmy
Rank: 2
等 级:论坛游民
帖 子:49
专家分:19
注 册:2010-5-17
收藏
得分:0 
我用VS2010都没有看到Chart控件哦!
不知道是否需要添加控件这个步骤
2011-06-23 11:29
sunman7619
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2011-6-23
收藏
得分:0 
以下是引用lidong3754在2011-6-21 11:38:51的发言:

慢慢学习
我还在用vs2005

没心没肺的白菜
2011-06-23 19:49
tangwenshao
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2011-6-26
收藏
得分:0 
刚开始学
2011-06-26 16:57
ljk121011
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2011-7-1
收藏
得分:0 
你好有没有barstacked的实例
2011-07-02 10:54
快速回复:Visual Studio 2010 Chart 探秘
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.028763 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved