大白话系列C#chartControl控件连接SQL Server数据库实现柱状图Word下载.docx
《大白话系列C#chartControl控件连接SQL Server数据库实现柱状图Word下载.docx》由会员分享,可在线阅读,更多相关《大白话系列C#chartControl控件连接SQL Server数据库实现柱状图Word下载.docx(14页珍藏版)》请在冰豆网上搜索。
2、在弹出的界面中给新建表添加列名及其类型,并保存。
范例如图:
3、在左侧找到“表”文件夹下“dbo.Table”,右键点击,选择“编辑前200行”,在弹出的窗口内对该数据表进行数据填充,就是对之前新建表里的各列填充数据。
三、新建C#项目
1、找到并打开VS2010软件,新建项目。
2、在弹出的窗口中左侧选择VisualC#下的Windows,然后在右侧选择“Windows窗体应用程序”,然后在下侧修改项目名称。
点击确定,即创建了一个窗体。
四、给窗体添加chartControl控件
1、在主界面左侧找到工具箱(若无工具箱,可在主界面“视图”选项卡下选择“工具箱”即可显示),在工具箱中找到chartControl控件双击,即可在窗体中添加该控件。
2、取消选择图标样式。
3、chartControl控件在父容器中停靠。
五、进入代码编写(完整代码附在文档最后)
1、在窗体上右键,选择“查看代码”,即可进入代码编写区。
2、初始代码主要是using引用部分和最基本的初始化InitializeComponent。
3、添加新的using引用,主要是【与数据库连接相关的usingSystem.Data.SqlClient】、【与DEV插件编辑相关的usingDevExpress.XtraEditors】、【与chartControl控件相关的usingDevExpress.XtraCharts】。
添加完成后如下图:
4、对chartControl控件进行初始化。
初始化主要包括对控件数据源的定义(定义数据源为CreateDataSource())、柱状图的横纵坐标、Y轴的最小及最大值和间隔、控件的标题名称及颜色、标题的位置等。
图中红框区域内是chartControl初始化函数InitChartDataSource()的代码,该段代码添加完之后将InitChartDataSource()添加到publicForm1()中,以达到初始化目的。
5、搭建数据源
由于在之前的chartControl初始化中我们已经定义数据源为CreateDataSource(),下面我们就要搭建CreateDataSource()。
创建privateDataTableCreateDataSource(),并为其添加代码如下图:
六、代码编写完成,启动调试。
附完整代码:
usingSystem;
usingSystem.Collections.Generic;
usingSystem.ComponentModel;
usingSystem.Data;
usingSystem.Drawing;
usingSystem.Data.SqlClient;
usingSystem.Text;
usingSystem.Windows.Forms;
usingDevExpress.XtraEditors;
usingDevExpress.XtraCharts;
namespaceWindowsFormsApplication1
{
publicpartialclassForm1:
Form
{
publicForm1()
InitializeComponent();
InitChartDataSource();
}
//初始化chartControl
publicvoidInitChartDataSource()
SeriesSeries1=newSeries("
Series1"
DevExpress.XtraCharts.ViewType.Bar);
//新建一个柱形图系列Series。
ViewType后面的是系列的类型,Bar就是简单的柱状图类型
Series1.DataSource=CreateDataSource();
//定义该系列的数据源
Series1.ArgumentScaleType=ScaleType.Qualitative;
Series1.ArgumentDataMember="
id"
;
//以数据源的哪一行为参数
Series1.ValueScaleType=ScaleType.Numerical;
//以数据的形式展示
Series1.ValueDataMembers.AddRange(newstring[]{"
value1"
});
//需要展示的数据
chartControl1.Series.Add(Series1);
//把之前定义的柱形图系列添加至chartControl1控件
XYDiagramdiagram=(XYDiagram)chartControl1.Diagram;
//获取chartControl的diagram对象
diagram.AxisY.MinorCount=10;
//设置Y轴的间隔
//diagram.AxisY.NumericOptions.Format=NumericFormat.Percent;
//以百分数显示
diagram.AxisY.Range.MaxValueInternal=100;
//最大值为100
diagram.AxisY.Range.Auto=false;
//不允许自动设定间隔值
diagram.AxisY.Range.MinValueInternal=0;
//最小值从0开始
diagram.AxisY.Tickmarks.MinorVisible=false;
//不显示间隔标示符
diagram.AxisX.Tickmarks.MinorVisible=false;
ChartTitlect=newChartTitle();
//添加标题
ct.Text="
各参数值图示"
//标题名称
ct.TextColor=Color.Black;
//颜色
ct.Font=newFont("
Tahoma"
16);
//字体
ct.Dock=ChartTitleDockStyle.Top;
//停靠在上方
ct.Alignment=StringAlignment.Center;
//居中显示
chartControl1.Titles.Add(ct);
#region定义数据库变量
publicstringDataBase;
//数据库名称
publicstaticSqlConnectioncon;
//定义一个SqlConnection类型的公共变量My_con,用于判断数据库是否连接成功
publicstaticstringM_str_sqlcon="
DataSource=.;
Database=Test;
Trusted_Connection=SSPI"
//定义SQLServer连接字符串,将DataSource改为自己的SQLServer服务器名
#endregion
privateDataTableCreateDataSource()
#region连接数据库
try
con=newSqlConnection(M_str_sqlcon);
//用SqlConnection对象与指定的数据库相连接
con.Open();
//打开数据库连接
con.Close();
catch
MessageBox.Show("
数据库链接失败,请检查。
"
"
提示信息"
MessageBoxButtons.OK,MessageBoxIcon.Information);
DataTableDt=newDataTable();
//创建新的虚拟数据表变量
DataColumncolumn1=newDataColumn();
//定义列架构变量
column1.DataType=System.Type.GetType("
System.String"
);
//定义存储在列中的数据的类型
column1.ColumnName="
//横坐标显示项目
column1.Caption="
Dt.Columns.Add(column1);
DataColumncolumn2=newDataColumn();
column2.DataType=System.Type.GetType("
System.Double"
column2.ColumnName="
//纵坐标显示数据
column2.Caption="
Dt.Columns.Add(column2);
//添加row
DataRowrow=null;
stringSQLTXT=null;
SQLTXT="
SELECTid,value1FROM[Table]"
//在数据表Table中选择两列,数据表名记得加中括号[]
SqlDataAdapterdtp=newSqlDataAdapter(SQLTXT,con);
DataTabledt=newDataTable();
dtp.Fill(dt);
foreach(varitemindt.Rows)
row=Dt.NewRow();
row["
]=((DataRow)item)["
];
Dt.Rows.Add(row);
returnDt;
}