小编Den*_*inh的帖子

ListView /避免可重入滚动事件中的"无限滚动"

我的目标是在WPF中模拟"无限滚动" ListView.我用一些不太理想的方法完成了这项任务,我确信有更好的方法.

通过"无限滚动"我的意思是:
让我们说一个ListView有20个项目(有序1, 2, 3, 4, ... 17, 18, 19, 20).当用户向下滚动一个项目时,该项目顶部的项目ListView被移除并放置在项目的结尾处,ListView因此项目的顺序是2, 3, 4, 5, ... 18, 19, 20, 1.现在,如果用户向下滚动两个项目,则前两个项目将被移除并放置在最后,因此项目的顺序为4, 5, 6, 7, ... 20, 1, 2, 3.现在,类似地,如果用户向上滚动一个项目,则将其底部的项目ListView移除并放置在开头,以便项目的顺序为3, 4, 5, 6, ... 19, 20, 1, 2.

我已经实现这个任务与分配给下面的功能ScrollChanged的情况下,ScrollViewer我希望是"无限":

// sv - the ScrollViewer to which this event handler is listening
// lv - the ListView associated with "sv"
bool handle_scroll …
Run Code Online (Sandbox Code Playgroud)

c# wpf listview event-handling scrollviewer

7
推荐指数
1
解决办法
622
查看次数

标签 统计

c# ×1

event-handling ×1

listview ×1

scrollviewer ×1

wpf ×1