首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ListViewItem悬停效应

ListViewItem悬停效应
EN

Stack Overflow用户
提问于 2016-02-09 20:20:25
回答 1查看 2.4K关注 0票数 1

如何在Windows 10通用新闻应用程序中实现Listview项的悬停效果?当用鼠标触摸或悬停项目时,该项目周围有一个灰色边框的缩放效果。你可以在图片中看到。

编辑:我尝试这样更改ListViewItem中的FocusBorderBrush。

将此代码添加到app.xaml

代码语言:javascript
复制
    <Style TargetType="ListViewItem">
            <Setter Property="Template">
                <Setter.Value>
                    <ControlTemplate TargetType="ListViewItem">
                        <ListViewItemPresenter 
                                       FocusBorderBrush="{ThemeResource GreenBackgroundThemeBrush}"
                                       />
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>

        <SolidColorBrush x:Key="GreenBackgroundThemeBrush" Color="Green" />

这是我的列表视图:

代码语言:javascript
复制
<ListView ItemsSource="{Binding myItems}">
        <ListView.ItemTemplate>
            <DataTemplate>
                <Grid>
                    <TextBlock Text="{Binding id}"/>
                </Grid>
            </DataTemplate>
        </ListView.ItemTemplate>     
    </ListView>

但这只会在项具有焦点时更改边框颜色。

现在它看起来像这样:

有没有一种方法可以像新闻应用程序一样,不仅仅专注于项目?

EN

回答 1

Stack Overflow用户

发布于 2016-02-09 20:44:06

将以下内容添加到App文件中,并根据需要进行编辑。这是ListView的默认样式,您不需要所有的样式,但我认为最好向您展示所有可以更改的内容,您需要的部分是FocusBorderBrush,指针位于属性上。保重。

代码语言:javascript
复制
<Style TargetType="ListViewItem">
        <Setter Property="FontFamily" Value="{ThemeResource ContentControlThemeFontFamily}" />
        <Setter Property="FontSize" Value="{ThemeResource ControlContentThemeFontSize}" />
        <Setter Property="Background" Value="Transparent" />
        <Setter Property="Foreground" Value="{ThemeResource SystemControlForegroundBaseHighBrush}" />
        <Setter Property="TabNavigation" Value="Local" />
        <Setter Property="IsHoldingEnabled" Value="True" />
        <Setter Property="Padding" Value="12,0,12,0" />
        <Setter Property="HorizontalContentAlignment" Value="Left" />
        <Setter Property="VerticalContentAlignment" Value="Center" />
        <Setter Property="MinWidth" Value="{ThemeResource ListViewItemMinWidth}" />
        <Setter Property="MinHeight" Value="{ThemeResource ListViewItemMinHeight}" />
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="ListViewItem">
                    <ListViewItemPresenter HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
                                           VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
                                           CheckBoxBrush="{ThemeResource SystemControlForegroundBaseMediumHighBrush}"
                                           CheckBrush="{ThemeResource SystemControlForegroundBaseMediumHighBrush}"
                                           CheckMode="Inline"
                                           ContentMargin="{TemplateBinding Padding}"
                                           ContentTransitions="{TemplateBinding ContentTransitions}"
                                           DisabledOpacity="{ThemeResource ListViewItemDisabledThemeOpacity}"
                                           DragBackground="{ThemeResource ListViewItemDragBackgroundThemeBrush}"
                                           DragForeground="{ThemeResource ListViewItemDragForegroundThemeBrush}"
                                           DragOpacity="{ThemeResource ListViewItemDragThemeOpacity}"
                                           FocusBorderBrush="{ThemeResource SystemControlForegroundAltHighBrush}"
                                           FocusSecondaryBorderBrush="{ThemeResource SystemControlForegroundBaseHighBrush}"
                                           PlaceholderBackground="{ThemeResource ListViewItemPlaceholderBackgroundThemeBrush}"
                                           PointerOverBackground="{ThemeResource SystemControlHighlightListLowBrush}"
                                           PointerOverForeground="{ThemeResource SystemControlHighlightAltBaseHighBrush}"
                                           PressedBackground="{ThemeResource SystemControlHighlightListMediumBrush}"
                                           ReorderHintOffset="{ThemeResource ListViewItemReorderHintThemeOffset}"
                                           SelectedBackground="{ThemeResource SystemControlHighlightListAccentLowBrush}"
                                           SelectedForeground="{ThemeResource SystemControlHighlightAltBaseHighBrush}"
                                           SelectedPointerOverBackground="{ThemeResource SystemControlHighlightListAccentMediumBrush}"
                                           SelectedPressedBackground="{ThemeResource SystemControlHighlightListAccentHighBrush}"
                                           SelectionCheckMarkVisualEnabled="True" />
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35291938

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档