我的应用中有一个链接到Access数据库的数据集,然后我从dataset
读取并在chart
中显示数据。
我之前使用的是SQL服务器数据库;但我希望我的应用程序能够在其安装的任何设备上运行,因此我使用了一个本地访问数据库文件,该文件与应用程序捆绑在一起。
我的问题是当Access数据库写入新条目时,点击程序中的刷新按钮并不反映图表中的这些更改,查看新条目的唯一方法是关闭并重新打开我的程序。 这是我用来显示/刷新数据的代码。
private void button1_Click(object sender, EventArgs e)
{
GlobalButton = button1;
battremTableAdapter.Fill(buoyDBDataSet.battrem);
ChartDisplay(buoyDBDataSet.battrem.AsEnumerable().Reverse().Take(Trackbarvalue).Reverse(),
"Battery Remaining", buoyDBDataSet.battrem.numColumn.ToString(),
buoyDBDataSet.battrem.battremainColumn.ToString());
}
private void ChartDisplay(object datasource, string series, string xvalue, string yvalue)
{
chart2.DataSource = datasource;
chart2.Series.Clear();
chart2.Series.Add(series);
chart2.Series[series].XValueMember = xvalue;
chart2.Series[series].YValueMembers = yvalue;
chart2.Series[series].IsXValueIndexed = true;
chart2.Series[series].BorderWidth = 5;
chart2.Series[series].ChartType = SeriesChartType.Line;
chart2.Visible = true;
}
此代码在使用SQL Server数据库时运行良好,但现在我已移至Access数据库,但不会刷新。
如何在每次点击按钮时刷新?
编辑:
这是运行Form1_Load
的唯一与图表有关的代码。
//Setting up the chart
chart2.ChartAreas["ChartArea1"].AxisX.Interval = 1;
chart2.Visible = false;
chart2.ChartAreas[0].CursorX.IsUserSelectionEnabled = true;
chart2.ChartAreas[0].AxisX.ScaleView.Zoomable = true;
//Setting up trackbar
trackBar1.Value = 10;
trackBar1.Minimum = 10;
trackBar1.Maximum = 100;
Trackbarvalue = 10;
trackBar1.ValueChanged += trackBar1_ValueChanged;