UWP 取消GridView、ListView鼠标选中、悬停效果

因为经常碰到ListView或者ListBox之类的选中、鼠标悬停样式和自己设置的主题颜色不搭,这时就需要改变这些样式了.

而这里我通过ListView来说明,大致思路其实就是重新定义Item的Template。

这里简单介绍通过修改样式模板,取消掉ListView内部元素的选中效果。

首先添加一个无效果样式

<Page.Resources>
        <ResourceDictionary>
            <Style x:Name="ListViewItemNoneStyle" TargetType="ListViewItem">
                <Setter Property="Template">
                    <Setter.Value>
                        <ControlTemplate TargetType="ListViewItem">
                            <Grid Background="{TemplateBinding Background}">
                                <ContentPresenter Content="{TemplateBinding Content}" Margin="{TemplateBinding Padding}" />
                            </Grid>
                        </ControlTemplate>
                    </Setter.Value>
                </Setter>
            </Style>
        </ResourceDictionary>
</Page.Resources>

然后在ListView中使用该样式

<GridView IsItemClickEnabled="True" SelectionMode="None"
ItemContainerStyle="{StaticResource ListViewItemNoneStyle}">

参考:http://www.songshizhao.com/blog/blogPage/333.html

原文地址:https://www.cnblogs.com/hupo376787/p/8890642.html