禁用 ListView 选择和悬停

Disable ListView selection and hover

通常我可以禁用 ListView 选择,就像 this 线程建议的那样 - 或者类似的设置 ItemContainerStyle 的东西。

但是我有这样定义的 ListView:

<ScrollViewer>
    <ListView  ItemsSource="{Binding List, Mode=OneWay}">
        <ListView.View>
            <GridView>
                <GridViewColumn>
                    <GridViewColumnHeader Style="{StaticResource header}"/>
                        <GridViewColumn.CellTemplate>
                            <DataTemplate>
                                <!-- Some data -->
                            </DataTemplate>
                        </GridViewColumn.CellTemplate>
                    </GridViewColumn>
                </GridViewColumn>
                ...
            </GridView> 
        </ListView.View>    
    </ListView> 
</ScrollViewer> 

如果我尝试指定 ItemContainerStyle - 列表中的数据就会消失。

给出上面的 ListView,我将如何继续删除选择?

你能试试这个吗ItemContainerStyle?这基本上不会拾取任何输入事件。

<ListView ItemsSource="{Binding List, Mode=OneWay}">
    <ListView.ItemContainerStyle>
        <Style TargetType="ListBoxItem" BasedOn="{StaticResource {x:Type ListViewItem}}">
            <Setter Property="IsHitTestVisible" Value="False"/>
        </Style>
    </ListView.ItemContainerStyle>
</ListView>