-
WPF系能优化
- 硬件及系统软件
- 布局
- 使用高效的布局Panel 如canvas, GRID布局比较费时,使用VirtualizingStackPanel
- Xaml树的构造从下至上,以减少父节点变化导致的子节点刷新
- 对象行为
- 对象释放应该同时释放其事件或者利用类似弱事件机制(Galasoft mvvm command)
- 资源
- 绑定
- 使用依赖属性能少量提高绑定性能
- 减少绑定对象的属性,绑定是通过反射来进行的 对于属性对的vm绑定性能差
- 绑定到ItemSource,使用 ObservableCollection<T> , 不要去更改ItemSource对象,应该是更改原有对象的集合
- 控件
- ItemsControl虚拟化
- 虚拟化条件
- 项容器直接添加到 ItemsControl。 例如,如果应用程序将 ListBoxItem 对象显式添加到 ListBox,则 ListBox 不会虚拟化 ListBoxItem 对象。
- ItemsControl 中的项容器属于不同类型。 例如,使用 Separator 对象的 Menu 无法实现项回收,因为 Menu 包含 Separator 和 MenuItem 类型的对象。
- 将 CanContentScroll 设置为 false。
- 将 IsVirtualizing 设置为 false。
- 容器回收 VirtualizingStackPanel的VirtualizationMode 设置为recycling.
- 优化模板 减少不必要的Visual
- 延迟滚动 ScrollViewer的 IsDeferredScrollingEnabled 设置为true
-
相关阅读:
图解排序算法(三)之堆排序
博客园添加看板娘
php设计模式
PHP二维数组排序 array_multisort
php-jwt-token
c++实现冒泡排序
常见的排序 转
Mac VMware Fusion CentOS7配置静态IP
vmwar快照和克隆区别
springboot maven打包插件
-
原文地址:https://www.cnblogs.com/fengpeng/p/4628416.html
Copyright © 2020-2023
润新知