启动状态
![]()
开始状态
![]()
1 private void CycleData()
2 {
3 //获取数据的异步委托方法
4 Action GetData = async () =>
5 {
6 Random random = new Random();//随机数
7 double inc = 0;//作为Point的Label属性
8 _isRead = true;
9 while (_isRead)
10 {
11 inc += 5;
12 //添加DataPoints
13 this.gunaSplineDataset1.DataPoints.Add(inc.ToString(), random.Next(100, 1000));
14 this.gunaSplineDataset2.DataPoints.Add(inc.ToString(), random.Next(100, 1000));
15 this.gunaSplineDataset3.DataPoints.Add(inc.ToString(), random.Next(100, 1000));
16 this.gunaChart1.Update();
17 await Task.Delay(500);
18 }
19 };
20 //执行任务
21 Task.Run(() =>
22 {
23 this.gunaChart1.Invoke(GetData);
24 });
25 }
1 private void guna2Button1_Click(object sender, EventArgs e)
2 {
3 this.gunaChart1.ResetZoom();
4 this.gunaChart1.Zoom = ZoomMode.None;
5 guna2Button1.Enabled = false;
6 guna2Button2.Enabled = true;
7 guna2Button3.Enabled = false;
8 CycleData();
9
10 }
1 //停止
2 private void guna2Button2_Click(object sender, EventArgs e)
3 {
4 this.gunaChart1.Zoom = ZoomMode.XY;
5 guna2Button1.Enabled = true;
6 guna2Button3.Enabled = true;
7 _isRead = false;
8 }
1 //删除
2 private void guna2Button3_Click(object sender, EventArgs e)
3 {
4 this.gunaChart1.ResetZoom();
5 this.gunaChart1.Zoom = ZoomMode.None;
6 this.gunaSplineDataset1.DataPoints.Clear();
7 this.gunaSplineDataset2.DataPoints.Clear();
8 this.gunaSplineDataset3.DataPoints.Clear();
9 this.gunaChart1.Update();
10 }
//关闭窗口时,彻底释放进程
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
//System.Diagnostics.Process.GetCurrentProcess().Kill();
Environment.Exit(0);
}
1 private bool _isRead;
2 public Form1()
3 {
4 InitializeComponent();
5 guna2Button2.Enabled = false;
6
7 }