0

我有一个启用单选的列表视图,但我只希望通过代码而不是通过用户交互来完成选择。原因是我使用 Vistual State Manager Selection 状态组作为处理渲染和动画“活动”状态转换的简单方法。除了我不希望用户能够设置“活动”项目之外,这一切都非常适合每个项目之间的良好过渡。

我已经尝试了一些明显的事情,比如覆盖 OnTapped Routed 事件并将 Handled 状态设置为 true,但该项目仍然被选中。

4

1 回答 1

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 的选择,因此请确保不会发生这种情况。

于 2013-01-04T15:05:39.997 回答