C#中VS2010中数据库图表的动态绑定
Posted
技术标签:
【中文标题】C#中VS2010中数据库图表的动态绑定【英文标题】:dynamic binding of chart from database in VS2010 in C# 【发布时间】:2012-03-28 22:35:35 【问题描述】:我必须使用动态数据源创建图表,我有一个代码。它不显示错误,但图表在运行时也不可见。
这里 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");
【问题讨论】:
我认为您的查询不正确,无法像您希望的那样运行它,您需要使用计数。或者你可以分别绑定 x 和 y 成员 myreader 里面有数据吗?为什么要在这里添加一个空字符串:out_table + "";您的意思是在引号中也包含分号吗?如果问题之一是它不可见,您可能应该显示图表的视图代码。 out_table 是我的表的名称。并且使用引号是因为它是使我能够使用变量名的格式。我是VS2010的新手,请告诉我如何显示视图代码,截图可以吗? 你想表达什么? ADX 列的可能值是多少? 我的表将包含对应于每个月的每一天的 adx 值。图表将显示该时间段内的值变化。 ADX 将是数值 【参考方案1】:感谢您帮助我。我已经解决了这个问题,对于其他人来说,这是解决方案。 这里,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");
【讨论】:
以上是关于C#中VS2010中数据库图表的动态绑定的主要内容,如果未能解决你的问题,请参考以下文章
Xceed WPF Toolkit - BusyIndicator - 在 C# 中创建动态加载消息,数据模板中的数据绑定