Как сохранить эффект наведения по умолчанию для моего пользовательского WPF RepeatButton
Когда я создаю пользовательский элемент управления WPF, я обычно сохраняю обычный внешний вид и эффекты по умолчанию. Например, это включает в себя синий указатель по умолчанию над кнопкой.
Я создал пользовательский TabControl с прокручиваемыми вкладками. По любой причине, кнопка RepeatButton на каждой стороне (то есть стрелки влево и вправо) не имеет эффекта наведения. Я нашел несколько учебных пособий, в которых рассказывается, как создать собственный эффект наведения для элементов управления, но, к сожалению, эти примеры просто заменяют фон другим цветом (и это выглядит совсем не так, как анимация, которая исчезает в прозрачном синем при сохранении основного фона).). Как я могу получить этот эффект парения? Есть ли способ получить доступ к стандартному эффекту наведения (это может быть раскадровка?)?
Изменить: я только что обнаружил, что если я удаляю пользовательский стиль, который я надел на 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>
1 ответ
Лучший способ атаковать подобные проблемы - запустить Expression Blend и сделать "Edit Template" для элемента управления, из которого вы хотите скопировать стили. Выполнение этого для полосы прокрутки покажет вам, что именно делает стиль по умолчанию, и затем вы сможете скопировать соответствующие биты в свой собственный стиль управления.