我有一个ListBox绑定到一个实现IList和IList的ItemsSource,但似乎与绑定到非虚拟化IList相比,SelectionMode = Extended行为不是我所期望的
IList行为:
Select Row 10
Shift + Select Row 5
Results Rows 5,6,7,8,9,10 being selected
VirtualizedCollection:IList,IList Behaivor:
Select Row 10
Shift + Select Row 5\
Result: Rows 1,2,3,4,5 and 10 being selected (no 6,7,8,9)
它几乎像黑盒子?方法是调用某种“获取当前选定的行”,在第二种情况下返回1但在第一种情况下获得实际的第10行。
如果特异性有用WPF Data Virtualization by Paul McClean是我正在使用的virtualizedcollection实现。当绑定时使用可视化集合时,他的源代码也有相同的错误。