WPF ListView通过单击按钮滚动整个页面(看到的项目)

问题描述 投票:0回答:1

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

提前感谢

c# .net wpf
1个回答
0
投票

首先,看一下How do I ask a good question?可能会有益。具体来说,如果您包含一些XAML,则对于您的情况将更容易理解。但是,我确实为您提供了解决方案。

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

ScrollViewer.VerticalOffset += ScrollViewer.ViewportHeight;
© www.soinside.com 2019 - 2024. All rights reserved.