禁用UWP ListView控件的ListViewItem显示效果

Posted

技术标签:

【中文标题】禁用UWP ListView控件的ListViewItem显示效果【英文标题】:Disable ListViewItem reveal effect of UWP ListView control 【发布时间】:2021-07-08 09:59:56 【问题描述】:

Windows UWP 最近为某些控件引入了reveal effect。我想关闭它们,尤其是对于ListView 控件。我该怎么做?

我已经尝试设置 ListView 资源但没有任何运气:

<ListView.Resources>
    <SolidColorBrush x:Key="ListViewItemBackground" Color="Red" />
    <SolidColorBrush x:Key="ListViewItemBackgroundSelected" Color="Red" />
    <SolidColorBrush x:Key="ListViewItemBackgroundPointerOver" Color="Red" />
    <SolidColorBrush x:Key="ListViewItemBackgroundSelectedPointerOver" Color="Red" />
</ListView.Resources>

【问题讨论】:

【参考方案1】:

事实证明,您可以通过在ListViewItem 中使用DefaultListViewItemStyle 样式来设置它。我没有设法通过ItemContainerStyleSetter 设置它,但如果你直接在DataTemplate 中添加ListViewItem 就可以了:

<ListView.ItemTemplate>
    <DataTemplate x:DataType="local:MyViewModel">
        <ListViewItem Style="ThemeResource DefaultListViewItemStyle">
            <Grid><!--Content--></Grid>
        </ListViewItem>
    </DataTemplate>
</ListView.ItemTemplate>

【讨论】:

以上是关于禁用UWP ListView控件的ListViewItem显示效果的主要内容,如果未能解决你的问题,请参考以下文章

UWP: ListView 中与滚动有关的两个需求的实现

我无法在codedui中选择UWP ListView项目

如何检测 ListView 或任何控件何时完成渲染?

UWP IsNullOrEmptyStateTrigger 不适用于 ListView

UWP ListView下模板宽度问题

滚动到 UWP 的 ListView 中的新项目