WPF中的高性能小区控制

本文关键字:小区 控制 高性能 WPF | 更新日期: 2023-09-27 18:06:40

我正在做一些工作,我需要开发一个控制,它应该是一个简单的图形,显示几个点和两条边。

我的问题是,我需要显示多达16k点,更新率为30赫兹。有人做过类似的事情吗?,有什么建议吗?

例如,是否从FrameworkElement或Control(在本例中是ItemsControl)继承。如果控件继承自frameworkelement,它在OnRender方法中绘制点的性能可能会更好,但我将错过继承自control的模板功能。

或者是否存在另一个控件可以做到这一点?

提前感谢您的时间。

WPF中的高性能小区控制

我最终使用了InteropBitmap,它是WPF中最快的位图渲染类。

它允许您映射您想要绘制的图像(在内存中),然后将其读取为图像。这是完美的,因为我需要在屏幕上绘制点。

我得到了很好的性能(几乎50Hz的20k点),我也使用PLINQ来更新内存中的点。

试着阅读ZoomableCanvas。我相信它能解决你的问题。您可以在ZoomableCanvas内将所有点渲染为小矩形/椭圆。