1

我正在使用 , 中的图表控件WinRTXAMLToolkit来绘制饼图。slider使用来自几个控件的值在屏幕上更新图表。

当滑块值发生变化时,我会调用一个函数来根据滑块的值计算公式(比如复利)。

然后我ItemsSource将图表的更改SeriesDefinitions为指向新的数据集合。

我正在尝试制作一个即时更新的“实时”饼图。问题是,当我不断更改滑块的值时,图表会出现 1-2 秒的延迟,以便再次绘制自身 - 这使得滑块移动在两者之间“冻结”一秒钟。

有什么办法可以解决这个问题吗?我可以将图表更新移动到不同的线程,以便 UI 线程保持空闲并且不会冻结吗?

4

2 回答 2

1

尝试使用另一个线程更新它并异步运行它。

一种方法是将其插入到 Update 功能中,然后执行以下操作:

await Update()

而 Update 和它调用的方法是异步的。

于 2015-07-04T17:16:19.437 回答
1

我认为问题可能在于您正在更改 ItemsSource。这是一个更密集的操作,因为很多事情都发生在后台。您可以使用 ObservableCollection 并更新它而不是替换它吗?

于 2015-07-05T14:31:05.810 回答