我有这样的列表视图 列表显示: ——— 芒果 橙色 葡萄 葡萄 葡萄 Apple 草莓 每当我使用downarrow进行导航时,BlueHighlight会在第一个Grapes处停顿,一个虚线的矩形从第二个葡萄开始并停留在
列表显示:
———
>芒果
>橙色
>葡萄
>葡萄
>葡萄
> Apple
>草莓
每当我使用downarrow进行导航时,BlueHighlight会在第一个Grapes处停顿,一个虚线的矩形从第二个葡萄开始并停留在第三个葡萄,然后BlueHighlight从Apple恢复.这似乎很奇怪,当导航向上时它会变得更加奇怪.它从Apple跳到Orange或芒果.
这是由于虚拟化吗?
似乎只有重复数据(葡萄)才会产生问题.任何帮助?
当您向下移动键盘时,焦点会跟踪您所在的位置.但是,选择会跟踪选择的项目.当同一项目在列表中多次时,选择矩形只能在其中一个上显示.
为了使您的工作符合您的预期,请将您的项目包装在ObservableCollection中.所以代替:
coll.Add(fruit);
你会写的
coll.Add(new FruitWrapper(fruit));
在ListBox中,您的ItemTemplate可以包含一个ContentPresenter,它在包装器中显示水果(例如< ContentPresenter Content =“{Binding Fruit}”/>).