2012-03-28 36 views
3

我必須創建具有動態數據源的圖表,我有一個代碼。它不顯示錯誤,但圖形在運行時也不可見。動態綁定圖表從VS2010中的數據庫在C#

這裏out_table是我的表名,ADX是它的一列。

代碼:

OleDbConnection con1 = new OleDbConnection(@"PROVIDER=Microsoft.ACE.OLEDB.12.0;DATA SOURCE=RS.accdb"); 
String sqlo = "Select ADX from " + out_table + ""; 
OleDbCommand myCommand = new OleDbCommand(sqlo, con1); 
myCommand.Connection.Open(); 
OleDbDataReader myreader = myCommand.ExecuteReader(CommandBehavior.CloseConnection); 
chart1.DataBindTable(myreader, "ADX"); 
+0

我覺得你的查詢是不是爲了像你想你需要使用計數來運行它正確。或者您可以單獨綁定x和y成員 – 2012-03-28 23:36:49

+0

myreader是否有數據?爲什麼在這裏添加一個空字符串:out_table +「」;你的意思是分號在引號中嗎?如果其中一個問題是不可見,您應該爲圖表顯示視圖代碼。 – 2012-03-29 00:15:30

+0

out_table是我桌子的名字。並使用了引號,因爲它是使我能夠使用變量名的格式。我是VS2010的新手,你能告訴我如何向你展示視圖代碼,一個截圖會好嗎? – 2012-03-29 01:09:09

回答

2

感謝我的幫助。我已經解決了這個問題,對於其他人,這裏是解決方案。 這裏,ds是集

 OleDbConnection con1 = new OleDbConnection(@"PROVIDER=Microsoft.ACE.OLEDB.12.0;DATA SOURCE=RS.accdb"); 
     String sqlo = "Select * from " + out_table + ""; 
     OleDbDataAdapter da1 = new OleDbDataAdapter(sqlo, con); 
     DataSet ds = new DataSet(); 
     da1.Fill(ds, in_table); 
     DataView firstView = new DataView(ds.Tables[0]); 
     chart1.Series[0].Points.DataBindXY(firstView, "ID", firstView, "ADX");