WPF 虚拟化
1 通用部分
例如,需要数据绑定、scrollview中放置Listbox导致尺寸未限制、改变列表控件模板但是未使用ItemsPresenter
可以参考 优化控件性能 - WPF .NET Framework | Microsoft Learn
主要的设置是
<Setter Property="VirtualizingPanel.IsVirtualizing" Value="True"/> <Setter Property="VirtualizingPanel.VirtualizationMode" Value="Recycling"/> <Setter Property="VirtualizingPanel.ScrollUnit" Value="Pixel"/>
2 关于ScrollView
CanContentScroll="True"
true
(如果 ScrollViewer 按逻辑单位滚动);false
(如果 ScrollViewer 按物理单位滚动), 默认值为 false
。
3 默认开启状态
默认开启:ListView
默认不开启:TreeView
自测时。设置Style为Null时候要注意这个特性。
4 关于OverridesDefaultStyle
会影响虚拟化结果。建议设置为False 然后单独设置样式。
5.其他内容
其他页面多也会影响ListView这类控件的渲染。