小编Wil*_*rck的帖子

直到我抓住并移动窗口后,窗口才完全绘制

我最近向 WinForm 添加了一些图表,并使用实时数据进行更新。我的表单加载喜欢这样:

private void MyForm_Load (object sender, EventArgs e){
...bunch of code
//Waveforms
InitializeChartEKG();
InitializeSpO2WaveformChart();
InitializeEtCO2WaveformChart();
FillWaveformCharts();
}
Run Code Online (Sandbox Code Playgroud)

实时图表的创建方式如下:

public async void FillWaveformCharts() {
     waveformData = AnesthWaveformDatas.CreateWaveformObjects(anestheticRecordNum);
     Action action = () =>
     FillChartEKG(waveformData);
     Invoke(action);
     action = () =>
     FillChartSpO2(waveformData);
     Invoke(action);
     action = () =>
     FillChartEtCO2(waveformData);
     Invoke(action3);
}
Run Code Online (Sandbox Code Playgroud)

然后,在每个 FillChart 方法中,我更新 UI,以便表单不会冻结:

public async void FillChartEKG (List<AnesthWaveformData> waveformData) {
 for (i = 0; i < waveformData.Count; i++){
   ...bunch of code that takes a long time to run...
  UpdateUI(); //updates UI …
Run Code Online (Sandbox Code Playgroud)

c# paint winforms livecharts

5
推荐指数
1
解决办法
183
查看次数

标签 统计

c# ×1

livecharts ×1

paint ×1

winforms ×1