我第一次插入100點圖,並把它約25000毫秒,以實現負載的所有點, 但是,接下來的時間,從101到200點取71000個milisecons。我不知道爲什麼時間在0到100和101到200之間。爲了減慢下一個100點,請幫助我知道問題爲什麼運行圖越來越慢
我嘗試了很多方法,但它們看起來都一樣,這個問題對我來說太難了,這裏是我的project.please幫助 https://drive.google.com/#folders/0B8uAsRdEr19GUXA4OFhvN21WZDQ
var dt = new DispatcherTimer();
dt.Interval = TimeSpan.FromMilliseconds(10);
dt.Tick += dt_Tick;
dt.Start();
void dt_Tick(object sender, EventArgs e)
{
chart1.Series[0].Points.Add(new SeriesPoint(i, rd.Next(40, 50)));
chart2.Series[0].Points.Add(new SeriesPoint(i, rd.Next(40, 50)));
chart3.Series[0].Points.Add(new SeriesPoint(i, rd.Next(40, 50)));
chart1.Series[1].Points.Add(new SeriesPoint(i, rd.Next(60, 70)));
chart2.Series[1].Points.Add(new SeriesPoint(i, rd.Next(60, 70)));
chart3.Series[1].Points.Add(new SeriesPoint(i, rd.Next(60, 70)));
chart1.Series[2].Points.Add(new SeriesPoint(i, rd.Next(70, 80)));
chart2.Series[2].Points.Add(new SeriesPoint(i, rd.Next(70, 80)));
chart3.Series[2].Points.Add(new SeriesPoint(i, rd.Next(70, 80)));
i++;
}
以防萬一:如何往往是代碼行'dt.Tick + = dt_Tick;'執行? – 2014-09-29 09:03:13
這行代碼將運行300次。如果問題在這裏,請幫我知道爲什麼?謝謝你 – hoainam1902 2014-09-29 09:49:10
每次運行時,它都會向'.Tick'事件添加一個NEW處理程序。這意味着它運行了300次之後,當'.Tick'事件發生時,'dt_Tick()'方法將被調用300次。您應該只在整個運行過程中運行一行代碼。 – 2014-09-29 10:23:51