WPF虚拟化的WrapPanel开源项目推荐

众所周知,WPF库里面的面板布局控件WrapPanel是非虚拟化的,在加载大量数据时,性能很差,因此网上提供了很多虚拟化的WrapPanel的实现方式,但大部分对其中包含的数据项都有固定宽度和高度的要求,也不能自动滚动到选择项。

这里推荐一个开源项目VirtualizingWrapPanel:

GitHub - sbaeumlisberger/VirtualizingWrapPanel: Implementation of a comprehensive VirtualisingWrapPanel for WPF

它有如下功能:

  1. 数据项可以设定为固定宽度和高度
  2. 数据项可以设定为可变宽度和高度
  3. 如果是可变宽度和高度,可以实现延迟布局
  4. 可滚动到指定位置
  5. 支持ListBox/ListView等集合控件,与WrapPanel的应用范围一致
  6. 支持数据分组
  7. 支持数据详细行,类似DataGrid中的详细行

下面是一些测试界面截图:

固定尺寸

可变尺寸

详细行

分组

通过我之前发布的博文:WPF ListBox滚动时固定组头-CSDN博客

还可以实现固定组头的功能。

为何特别提到对项的不同尺寸的支持,请看一下Windows的文件管理器:

网络上公开的一些代码实现的都是固定高度/宽度的文件浏览器,可变高度的几乎没有,而通过上面的开源项目,则能实现类似Windows的这个效果。

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值