我有一个像这样的列表视图
列表显示:
————————
- Mango
- Orange
- Grapes
- Grapes
- Grapes
- Apple
- 草莓
每当我使用向下箭头导航时,蓝色突出显示会在第一个葡萄处暂停,虚线矩形从第二个葡萄开始并在第三个葡萄处暂停,然后蓝色突出显示从苹果恢复。这看起来很奇怪,当导航向上时,它会变得更奇怪。它从苹果跳到橙子或芒果。
这是由于虚拟化吗?
似乎只有重复的数据(葡萄)造成了问题。有帮助吗?
虚线矩形是您的键盘焦点。蓝色矩形是您的选择。
当您向下移动键盘时,焦点会跟踪您所在的位置。然而,该选择会跟踪选择了哪个项目。当同一项目多次出现在列表中时,选择矩形只能显示在其中一项上。
为了使这项工作按照您期望的方式工作,请将您的项目包装在 ObservableCollection 中。所以而不是:
coll.Add(fruit);
你会写
coll.Add(new FruitWrapper(fruit));
In your ListBox
your ItemTemplate
可以包括一个ContentPresenter
将水果呈现在包装纸内(例如。<ContentPresenter Content="{Binding Fruit}" />
).
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)