Oxyplot 在方法结束后更新数据

Oxyplot updating data after the end of method

你能告诉我为什么图表在上次迭代(i = 99)后更新吗?

    private void music_play_button_Click(object sender, RoutedEventArgs e)
    {
        for (int i = 0; i < 100; i++)
        {
            (hr_plot.Model.Series[0] as LineSeries).Points[0] = new DataPoint(i, HRConstants.HRMin);
            (hr_plot.Model.Series[0] as LineSeries).Points[1] = new DataPoint(i, HRConstants.HRMax);
            System.Threading.Thread.Sleep(10);
            hr_plot.Model.InvalidatePlot(true);
        };
    }

图表应在每次​​迭代后更改,而不是在整个循环后更改。什么是正确的解决方案?

Buttoneventhandler 在计算新数据点时阻塞 UI-线程。因此,图表只有在事件处理程序完成后才会出现

解法: 您可以在事件处理程序中创建一个新的 dispatchertimer 并在每个 timerTick

上计算一次迭代