private void listView_SelectedIndexChanged(object sender, EventArgs e) { if (listView.SelectedItems.Count == 1) { LoadTreeProject(); IORealListViewItem lvi = listView.SelectedItems[0] as IORealListViewItem; this.RealChart.Series.Clear(); this.RealChart.ChartAreas.Clear(); this.RealChart.ChartAreas.Add(new ChartArea() { Name = "IOChartArea" }); this.RealChart.ChartAreas[0].AxisX.Title = "时间"; this.RealChart.ChartAreas[0].AxisX.LineColor = Color.Black; this.RealChart.ChartAreas[0].AxisX.LineWidth = 2; this.RealChart.ChartAreas[0].AxisX.IntervalType = DateTimeIntervalType.Auto; this.RealChart.ChartAreas[0].AxisY.Title = lvi.Para.IO_LABEL.Trim(); this.RealChart.ChartAreas[0].AxisY.LineColor = Color.Black; this.RealChart.ChartAreas[0].AxisY.LineWidth = 2; this.RealChart.ChartAreas[0].AxisY.IntervalType = DateTimeIntervalType.Auto; this.mediator.IOPropeitesForm.SetPara(this.Server, this.Communication, this.Device, lvi.Para); int index = IOSeries.FindIndex(x => x.Name.Trim() == lvi.Para.IO_NAME.Trim()); if (index >= 0) { this.SeriesIndex = index; } IOSeries[this.SeriesIndex].ChartArea = "IOChartArea"; this.RealChart.Series.Add(IOSeries[this.SeriesIndex]); } }
private async void Realtimer_Tick(object sender, EventArgs e) { await Task.Run(() => { try { //获取读取实时值 IOCenterManager.QueryFormManager.ReadRealDevice(this.Server, this.Communication, this.Device); for (int i = 0; i < this.listView.Items.Count; i++) { IORealListViewItem lvi = this.listView.Items[i] as IORealListViewItem; lvi.RefreshParaValue(); } this.listView.Refresh(); ///刷新曲线数据 for (int i = 0; i < IOSeries.Count; i++) { IOSeries[i].RefreshRealData(); } } catch (Exception ex) { IOCenterManager.QueryFormManager.DisplyException(ex); } }); }
private void InitListView() { if (Device != null) { this.listView.Items.Clear(); for (int i = 0; i < Device.IOParas.Count; i++) { IORealListViewItem lvi = new IORealListViewItem(Device.IOParas[i]); this.listView.Items.Add(lvi); } //处理实时曲线 this.RealChart.Series.Clear(); } }