【问题标题】:WPF ListView scroll whole page (seen items) by button clickWPF ListView 通过按钮单击滚动整个页面(看到的项目)
【发布时间】:2020-02-11 23:31:28
【问题描述】:

我在 WPF 中创建了一个列表视图。那里的项目通过单击更改它们的背景颜色,在这种情况下,我停用了 listview 道具“Focusable”。 对于我的用例(在触摸屏上),我想隐藏滚动条,只需单击底部的向上/向下按钮即可滚动。一键应滚动整个页面(向上/向下)并显示下一个(到目前为止隐藏的)项目。 我正在寻找一个灵活的解决方案,不想计算像素或那样的东西(项目也没有固定的高度,还有窗口)

提前致谢

【问题讨论】:

    标签: c# .net wpf


    【解决方案1】:

    首先,看看How do I ask a good question? 可能会对您有所帮助。具体来说,在您的情况下,如果您包含一些 XAML,则更容易理解这种情况。不过,我确实认为我有适合您的解决方案。

    ItemsControls 像ListView 一样支持“内容滚动”,这意味着能够按内容/项目滚动而不是按像素滚动。 This question 提供了一个解决方案,通过访问内部ScrollViewer 来查找当前在ListView 中可见的项目。 ScrollViewer.VerticalOffset 会告诉你索引第一个可见项目,ScrollViewer.ViewportHeight 会告诉你有多少项目是可见的。要滚动到“下一页”,您只需:

    ScrollViewer.VerticalOffset += ScrollViewer.ViewportHeight;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-01-15
      • 1970-01-01
      • 1970-01-01
      • 2015-02-03
      • 1970-01-01
      • 2016-03-07
      • 2011-08-11
      相关资源
      最近更新 更多