这是一个场景:在UIElement
中显示大量Panel
个。
由于这些控件的数量可能很大,我担心内存分配和性能问题。
可视化是一个选项,但我希望能够做得更好,因为目标是显示这些控件的内容,而不需要处理鼠标或键盘事件。
有没有办法在这种情况下提高性能?
感谢。
答案 0 :(得分:0)
您可以使用普通ListBox
来显示它们,默认面板是VirtualizingStackPanel
,默认情况下IsVirtualizing
属性设置为true。
您目前是否遇到性能问题或在发生这些问题时做好准备?在您生成并显示所有内容并发现问题后,我只会担心性能。
这篇文章提供了一些如何管理大型数据集和虚拟化的示例:http://www.codeproject.com/Articles/34405/WPF-Data-Virtualization
答案 1 :(得分:0)
你说可视化......我假设你的意思是虚拟化?如果是,那么您可能会或可能不会了解此网站:http://msdn.microsoft.com/en-us/library/cc716879.aspx
除虚拟化外,他们还谈论延迟滚动。我希望这会有所帮助。
答案 2 :(得分:0)
我认为这些可以帮到你:
1。 Optimize Layout and Design
2。 Optimize Text
所有其他有关绩效的有用链接可以在这里找到:http://msdn.microsoft.com/en-us/library/aa970683.aspx但我认为2上面的链接在你的情况下会很好。