翻譯|使用教程|編輯:楊鵬連|2021-07-05 11:24:02.803|閱讀 215 次
概述:任何系列都可以使用TeeChart編輯器連接到ADO.NET表或查詢。每個系列都可以使用相同或不同的ADO.NET數據庫連接到相同或不同的表或查詢。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
TeeChart for .NET是優秀的 4.0 WinForm 圖表控件,官方獨家授權漢化,集功能全面、性能穩定版、優惠等優勢。NET 的 TeeChart for .NET 中文承諾讓您在使用和學習上沒有語言障礙,最少可以節省30%的開發時間。
簡介
將TeeChart控件連接到ADO.NET數據庫可以在設計時使用TeeChart編輯器完成,也可以在運行時使用幾行代碼。
任何系列都可以使用TeeChart編輯器連接到ADO.NET表或查詢。每個系列都可以使用相同或不同的ADO.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. 現在確定這個窗口,點擊 "下一步",然后點擊 "完成"。
9. 現在打開TeeChart編輯器,添加一個BarSeries,并導航到Series標簽的DataSource標簽。
BindingSource [VS2005,VS2008,VS2010,VS2012,VS2013]
在設計時,將一個系列連接到一個ADO.NET數據源的必要步驟是。
3. 在數據源工具箱上點擊右鍵,選擇 "添加新數據源"。
4. 選擇數據庫,選擇/創建連接字符串,在我們的例子中,我們使用Microsoft Access DataBase File(OLE DB),點擊繼續。
單一記錄
單一記錄圖表允許在TeeChart上顯示單一數據庫記錄的全部或部分記錄。它可能對數據庫視圖或表格很有用,例如,每年的銷售數字被存儲為單獨的月份列,"JAN"、"FEB"、"MAR"......等,通過記錄顯示連續幾年的月度銷售。
單一記錄圖表法支持數據集、表格和數據視圖。使用圖表編輯器選擇單記錄作為圖表系列的數據源類型。
在運行時連接到ADO.NET
[版本 .net 2003]
DataAdapter
上述設計時的步驟可以通過幾行代碼以編程方式重現。這給了你更多的自由和對數據庫操作的控制。
每個系列都有 "DataSource "屬性,它決定了數據庫值的來源(表或查詢),還有 "YValues.DataMember "和 "LabelMember "屬性,用于指定我們要繪制的字段。
把一個新的TeeChart for .Net對象拖到一個新的項目和一個新的表格上。
[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 Files\Steema Software\TeeChart for .NET v3\Sample data\TeeChart.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 Try End Sub Private Sub OpenConnWithJet40(ByRef MasterDataSet As DataSet) Dim TestConn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=C:\Program Files\Steema Software\TeeChart for .NET v3\Sample data\TeeChart.mdb;") TestConn.Open() Dim StrCom As String = "SELECT * FROM Employee" Dim MyCommand As New OleDbDataAdapter(StrCom, TestConn) MyCommand.Fill(MasterDataSet, "Employee") TestConn.Close() End Sub End Class在.NET 2005版本中,對2005版本的變化不大
[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 Files\Steema Software\TeeChart for .NET v3\Sample data\TeeChart.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 Sub End Class如果數據庫的值發生了變化,你想 "刷新 "連接并再次檢索這些值,你應該這樣做。
單一記錄
與表的連接
使用圖表編輯器將在表格的初始化中創建以下代碼。類似的代碼可以在運行時用于創建和連接新的SingleRecord數據源。
假設有一個名為sourceTableSet的數據集,表為:sourceTable)。
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:740060302
關注慧聚IT微信公眾號???,了解產品的最新動態和最新資訊。
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自: