覆盖ListBoxItem默认的OnMouseOver背景样式效果

问题描述 投票:0回答:1

关于如何做到这一点,我遇到了很多不同的例子,但似乎没有一个对我有用。我有一个ListBox,它有一个项目列表。每次将鼠标悬停在列表中的某个项目上时,都会有一个透明背景和项目周围的边框。我想摆脱这个。这就是我所尝试过的;

<Style TargetType="ListBoxItem">
    <EventSetter Event="MouseDown" Handler="SitesListBox_MouseDown"/>
    <Style.Triggers>
        <Trigger Property="IsMouseOver" Value="True">
            <Setter Property="Foreground" Value="White"></Setter>
            <Setter Property="BorderBrush" Value="Transparent"></Setter>
            <Setter Property="Background" Value="Transparent"></Setter>
        </Trigger>
    </Style.Triggers>
</Style>

文本颜色变化很好但背景和边框不受影响

c# .net wpf
1个回答
0
投票

不确定这是否是你想要的,但似乎有所期望的效果

<Style TargetType="ListBoxItem">
    <EventSetter Event="MouseDown" Handler="SitesListBox_MouseDown"/>
    <Style.Triggers>
        <Trigger Property="IsMouseOver" Value="True">
            <Setter Property="Foreground" Value="White"></Setter>
            <Setter Property="Opacity" Value="0"/>
        </Trigger>
    </Style.Triggers>
</Style>
© www.soinside.com 2019 - 2024. All rights reserved.