【问题标题】:WinForms ListView smooth scrollingWinForms ListView 平滑滚动
【发布时间】:2017-03-12 09:29:28
【问题描述】:

Windows 资源管理器 能够在滚动时显示半可见项目。这种行为会产生平滑的滚动。

有没有办法在 Windows 窗体中使用 ListView 重现这种效果?

更新

我通过更改另一个具有相同行为的ListView 发现:

【问题讨论】:

  • Explorer 不使用 ListView。它是自定义控件,是 DirectUIHwnd 的子类。外观和感觉很像 ListView,但内容是完全自定义绘制的,大致相当于 ListView.OwnerDraw。这就是为什么它可以使用这样的技巧。 Microsoft 不想与我们分享它。
  • 我在 Windows 属性对话框中发现了另一个显示相同效果的列表。根据 WinSpy++,它是一个SysListView32
  • 那个更有说服力。也可以在 Winforms 中工作,但您必须使用 Groups 属性。
  • 我尝试在虚拟模式 ListView 中应用组,但它不起作用,因为默认情况下没有实现(这是一个未记录的功能)。

标签: c# winforms listview scroll


【解决方案1】:

能够滚动部分行通常不是一个有用的功能。

但是,如果您真的想这样做,只需将ShowGroups 设置为true。 ListView 控件将允许像素级滚动。

例如:

【讨论】:

    猜你喜欢
    • 2010-11-05
    • 2018-12-30
    • 2014-01-12
    • 2016-05-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多