我有一个列表视图,启用了单选,但我只希望通过代码而不是通过用户交互来完成选择。 原因是我使用Vistual状态管理器选择状态组作为处理渲染和动画“活动”状态转换的简单方法。这一切都很好,每个项目之间都有一个很好的过渡,但我不希望用户能够设置'活动'项目。
我尝试了一些显而易见的事情,例如覆盖OnTapped Routed事件并将Handled状态设置为true,但项目仍然被选中。
答案 0 :(得分:2)
如果您希望用户仍然可以滚动但无法选择,那么最好将ScrollView与IsHitTestVisible
设置为False的ListView结合使用:
<ScrollViewer Width="100" Height="100"
HorizontalAlignment="Left" VerticalAlignment="Top"
VerticalScrollBarVisibility="Auto">
<ListView Name="Foo" BorderThickness="0" IsHitTestVisible="False">
<System:String>Item 1</System:String>
<System:String>Item 2</System:String>
<System:String>Item 3</System:String>
etc...
</ListView>
</ScrollViewer>
请注意,如果ListView在ListView上获得焦点,则用户可以使用键盘更改ListView的选择,因此请确保不会发生这种情况。