当我创建自定义 WPF 控件时,我通常会保留通常的默认外观和效果。例如,这包括默认的蓝色悬停在按钮上。
我创建了一个带有可滚动标签的自定义 TabControl。无论出于何种原因,每一侧的RepeatButton(即左右滚动箭头)都没有悬停效果。我找到了几个教程,告诉我如何为控件创建自己的悬停效果,但不幸的是,这些示例只是用不同的颜色替换了背景(这看起来与在保持底层背景的同时淡入透明蓝色的动画非常不同)。如何获得这种悬停效果?有什么方法可以访问标准悬停效果(可能是故事板?)?
编辑:我刚刚发现,如果我删除了我放在重复按钮上的自定义样式,我会得到默认的悬停效果。也许问题是——我是如何破坏悬停效果的,我如何温和地修改外观而不破坏它?下面是破坏悬停效果的样式-
<Style x:Key="TabScrollerRepeatButtonStyle" TargetType="{x:Type RepeatButton}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate>
<Border x:Name="testTest" Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="1" Margin="1,0" CornerRadius="2">
<ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center" Content="{TemplateBinding ContentControl.Content}"/>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>