检测WPF列表视图滚动条何时位于底部?有没有办法检测ListViewScrollViewer的滚动条是否已经到达虚拟滚动空间的底部?我想检测这个以从服务器获取更多项目以放入绑定到ListView的ObservableCollection中。现在我这样做:privatevoidcurrentTagNotContactsList_scrollChanged(objectsender,ScrollChangedEventArgse){if(e.VerticalOffset+e.ViewportHeight==e.ExtentHeight){Debug.Print("在列表底部!");这甚至是正确的吗?我还需要区分导致事件的垂直滚动条和导致事件的水平滚动条(即,如果您在框底部水平滚动,我不想继续生成对服务器的调用)。谢谢。我想到了。看起来我应该从ScrollBar(在XAML中)本身而不是查看器获取事件。这行得通,但我只需要想出一种方法来避免在滚动条关闭后重复调用事件处理程序。也许计时器会很好:privatevoidcurrentTagNotContactsList_Scroll(objectsender,ScrollEventArgse){如果(sb.Orientation==Orientation.Horizo??ntal)返回;if(sb.Value==sb.Maximum){Debug.Print("在列表底部!");}}//“Max”的答案中的一个小改动以停止重复调用。//此行停止重复调用ScrollViewer.CanContentScroll="False"privatevoiddtGrid_ScrollChanged(objectsender,ScrollChangedEventArgse){//这是为了垂直检查&将避免在加载时间(第一次)调用if(e.VerticalChange>0){if(e.VerticalOffset+e.ViewportHeight==e.ExtentHeight){//DoyourStuff}}}对于UWP,我得到了类似上面的C#学习教程:DetectwhenWPFlistview滚动条在底部?如果分享的内容对你有用,需要了解更多C#学习教程,希望你多多关注——如果(scrollViewer.VerticalOffset==scrollViewer.ScrollableHeight)btnNewUpdates.Visibility=Visibility.Visible;}本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如有转载请注明出处:
