TeeChart for .NET是优秀的 4.0 WinForm 图表控件,官方独家授权汉化,集功能全面、性能稳定版、优惠等优势。NET 的 TeeChart for .NET 中文承诺让您在使用和学习上没有语言障碍,最少可以节省30%的开发时间。
点击立即下载最新版TeeChart for .NET
简介
这种设计使你在如何将图表连接到数据库方面具有完全的灵活性,因为你不会被限制在只有一个数据库或只有一个表或查询。
数据也是在设计时检索的,所以你在开发时可以看到实际的数据。
在设计时连接到ADO.NET
DataAdapter [VS2003]
在设计时,将一个系列连接到一个ADO.NET数据源的必要步骤是。
1. 从VS.NET工具箱的数据选项卡中,将一个OleDbDataAdapter拖到一个WinForm上,上面有一个TeeChart for .Net对象。
2. 在数据适配器配置向导中点击 “下一步”,在下一页中点击 “新连接… “按钮。
3. 现在点击新窗口的 “提供者 “标签,选择 “Microsoft Jet OLE DB提供者”,如下图所示。


6. 现在点击数据适配器配置向导窗口的 “下一步 “按钮,在出现的窗口中选择 “使用SQL语句 “并再次点击 “下一步 “按钮。
7. 现在点击 “查询生成器 “按钮,添加 “雇员 “表。关闭 “添加表 “窗口,选择 “*(所有列)”复选框。

8. 现在确定这个窗口,点击 “下一步”,然后点击 “完成”。


BindingSource [VS2005,VS2008,VS2010,VS2012,VS2013]
在设计时,将一个系列连接到一个ADO.NET数据源的必要步骤是。1. 从VS.NET工具箱的数据选项卡中,将一个BindingSource拖到一个带有TeeChart for .Net对象的WinForm上。


3. 在数据源工具箱上点击右键,选择 “添加新数据源”。
4. 选择数据库,选择/创建连接字符串,在我们的例子中,我们使用Microsoft Access DataBase File(OLE DB),点击继续。

注意:点击测试连接按钮,检查你的数据源的连接情况。
5. 最后在浏览中选择你要连接的表。



单一记录
单一记录图表允许在TeeChart上显示单一数据库记录的全部或部分记录。它可能对数据库视图或表格很有用,例如,每年的销售数字被存储为单独的月份列,”JAN”、”FEB”、”MAR”……等,通过记录显示连续几年的月度销售。
在运行时连接到ADO.NET
[版本 .net 2003]
DataAdapter
上述设计时的步骤可以通过几行代码以编程方式重现。这给了你更多的自由和对数据库操作的控制。
[C#]using System.Data;using System.Data.OleDb;using System.Security;using System.Security.Permissions;private void Form1_Load(object sender, System.EventArgs e) { DataSet masterDataSet = new DataSet(); Bar bar1 = new Bar(tChart1.Chart); try { OpenConnWithJet40(ref masterDataSet); DataTable employeeTable = masterDataSet.Tables["EMPLOYEE"]; bar1.YValues.DataMember = employeeTable.Columns["SALARY"].ToString(); bar1.LabelMember = employeeTable.Columns["LASTNAME"].ToString(); bar1.DataSource = employeeTable; } catch (SecurityException) { MessageBox.Show("The calling method has not been granted sufficient permission to access the Microsoft Jet 4.0 OLE DB Provider."); }} [OleDbPermission(SecurityAction.Demand, Provider = "Microsoft.Jet.OLEDB.4.0")] private void OpenConnWithJet40(ref DataSet masterDataSet) { OleDbConnection testConn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;" + @"Data Source=C:Program FilesSteema SoftwareTeeChart for .NET v3Sample dataTeeChart.mdb;"); testConn.Open(); string strCom = "SELECT * FROM Employee"; OleDbDataAdapter myCommand = new OleDbDataAdapter(strCom,testConn); myCommand.Fill(masterDataSet, "Employee"); testConn.Close(); }[VB.Net]Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim MasterDataSet As New DataSet() Dim Bar1 As New Steema.TeeChart.Styles.Bar(TChart1.Chart) Try OpenConnWithJet40(MasterDataSet) Dim employeeTable As DataTable = MasterDataSet.Tables("Employee") Bar1.YValues.DataMember = employeeTable.Columns("SALARY").ToString() Bar1.LabelMember = employeeTable.Columns("LASTNAME").ToString() Bar1.DataSource = employeeTable Catch ex As Exception MessageBox.Show("Microsoft Jet 4.0 OLE DB Provider problem: " & ex.Message) End TryEnd SubPrivate Sub OpenConnWithJet40(ByRef MasterDataSet As DataSet) Dim TestConn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=C:Program FilesSteema SoftwareTeeChart for .NET v3Sample dataTeeChart.mdb;") TestConn.Open() Dim StrCom As String = "SELECT * FROM Employee" Dim MyCommand As New OleDbDataAdapter(StrCom, TestConn) MyCommand.Fill(MasterDataSet, "Employee") TestConn.Close() End SubEnd Class
在.NET 2005版本中,对2005版本的变化不大
[version .net 2005]
DataAdapter
[C#]using System.Data;using System.Data.OleDb;using System.Security;using System.Security.Permissions;private void Form1_Load(object sender, EventArgs e) { //string ConnString = SqlDataSource1.ConnectionString; string sQuery = "select * from Employee"; //SqlConnection myConnection = new SqlConnection(ConnString); string myConnString = "Driver={Microsoft Access Driver (*.mdb)};Dbq=C:\Program Files\Steema Software\TeeChart for .NET v3\Sample data\TeeChart.mdb;Uid=Admin;Pwd=;"; System.Data.Odbc.OdbcConnection myConnection = new System.Data.Odbc.OdbcConnection(myConnString); //SqlCommand myCommand = new SqlCommand(sQuery, myConnection); System.Data.Odbc.OdbcCommand myCommand = new System.Data.Odbc.OdbcCommand(sQuery, myConnection); myConnection.Open(); //SqlDataReader myReader = myCommand.ExecuteReader(); System.Data.Odbc.OdbcDataReader myReader = myCommand.ExecuteReader(); int XColumn = myReader.GetOrdinal("ID"); int YColumn = myReader.GetOrdinal("SALARY"); int LabelColumn = myReader.GetOrdinal("LASTNAME"); Steema.TeeChart.Styles.Bar bar1 = new Steema.TeeChart.Styles.Bar(tChart1.Chart); while (myReader.Read()) { bar1.Add(Convert.ToInt32(myReader[XColumn]), Convert.ToDouble(myReader[YColumn]), Convert.ToString(myReader[LabelColumn])); } myReader.Close(); myConnection.Close();} [VB.Net]Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim MasterDataSet As New DataSet() Dim Bar1 As New Steema.TeeChart.Styles.Bar(TChart1.Chart) Try OpenConnWithJet40(MasterDataSet) Dim employeeTable As DataTable = MasterDataSet.Tables("EMPLOYEE") Bar1.YValues.DataMember = employeeTable.Columns("SALARY").ToString() Bar1.LabelMember = employeeTable.Columns("LASTNAME").ToString() Bar1.DataSource = employeeTable Catch ex As Exception MessageBox.Show("Microsoft Jet 4.0 OLE DB Provider problem: " & ex.Message) End Try End Sub Private Sub OpenConnWithJet40(ByRef MasterDataSet As DataSet) Dim TestConn As New OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=C:Program FilesSteema SoftwareTeeChart for .NET v3Sample dataTeeChart.mdb;") TestConn.Open() Dim StrCom As String = "SELECT * FROM Employee" Dim MyCommand As New OleDb.OleDbDataAdapter(StrCom, TestConn) MyCommand.Fill(MasterDataSet, "Employee") TestConn.Close() End SubEnd Class
如果数据库的值发生了变化,你想 “刷新 “连接并再次检索这些值,你应该这样做。
TChart1.Series(0).CheckDataSource
CheckDataSource “方法将强制该系列再次检索所有记录。
所有的系列也都有 “XValues.ValueSource “属性。这个属性只用于XY图表(当你为每个点有一个X坐标时)。
单一记录
与表的连接
this.singleRecordSource1 = new Steema.TeeChart.Data.SingleRecordSource();this.sourceTableSet.DataSetName = "NewDataSet";this.sourceTableSet.Tables.AddRange(new System.Data.DataTable[] {this.sourceTable});this.singleRecordSource1.DataSource = this.sourceTableSet;this.singleRecordSource1.ValueMembers = new string[] { "JAN", "FEB", "MAR"};this.bar1 = new Steema.TeeChart.Styles.Bar();this.bar1.DataSource = this.singleRecordSource1;
表格导航
TeeChart的SingleRecord使用CurrencyManager组件来导航数据库表并更新Chart。在改变表的记录后,使用CheckDatasource来更新Chart。
例子
private CurrencyManager myCurrencyManager;public void ConnectChartToTable(){ myCurrencyManager = (CurrencyManager)this.BindingContext[sourceTable]; singleRecordSource1.RecordCurrency=myCurrencyManager; tChart1[0].CheckDataSource();}
该表(和图表)可以通过使用CurrencyManager来导航。
private void MovePrevious() { if (myCurrencyManager.Position>0) { myCurrencyManager.Position=myCurrencyManager.Position+1; tChart1[0].CheckDataSource(); } } private void MoveNext() { if (myCurrencyManager.Position<myCurrencyManager.Count) { myCurrencyManager.Position=myCurrencyManager.Position+1; tChart1[0].CheckDataSource(); } }
在ASP.NET中使用ADO.NET
你可以通过ASP.NET连接数据源,在ASP.NET WebForm上使用TeeChart WebChart,其方式与数据源连接到WinForm上的TeeChart组件的方式几乎相同。关于ASP.NET的更多信息,请参见互联 应用教程。
现的的TeeChart为.NET已加入在线订购,现在抢购可立享优惠!
如果你看到了可爱的动物群,欢迎加入展示区QQ:
标签:
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!