在WPF中呈现数千个Canvas元素的性能?

时间:2012-04-23 14:25:59

标签: wpf

我需要在数据网格中渲染图形。我想在每行的第一列/单元格中渲染一个画布元素,然后在那里渲染一个点和一条线。现在的问题是数据网格中会有数千行。在我开始实施之前,我更愿意从已经有过这方面经验的人那里获得洞察力。这种方法是否会缓慢进行?我选择最好的路径吗?

1 个答案:

答案 0 :(得分:1)

如果您没有立即向用户显示所有数据,您可以利用数据虚拟化概念 这个PDF帮助我理解了数据虚拟化的关键概念。

那就是说,使用DataGrid并不是一个好主意。数据量越大,您应该使用的是更低级别的组件。在您的情况下,那将是ItemsControl 我相信快速浏览他们的定义值得所有解释。

我曾经在msdn上看过一位博客作者,他展示了一个例子,他将加载超过一百万张图纸并且不会落后一点。这完全有可能,但我再也找不到那个链接了。

HTH,

巴布。