I have created a kind of custom TextBox
in Expression Blend. I have changed the fill of the background and border to a gradient, and added in a Shadow Effect.
I've noticed that when I mouseover or focus my TextBox
, some default behavior/(style?) of WPF takes over and my border is changed.
I was wondering if there was anyway to prevent or stop WPF from changing my TextBox
es style when I focus or mouseover it. Is this possible?
Does you custom style set the OverridesDefaultStyle
property to true
? I believe this should prevent default values being drawn from the default style.
If so, and this isn't working (or you want to use your own border), all I can think is that you will need to override the default styling mechanism for the event of the appropriate property changing using a Trigger in your Style
/ ControlTemplate
:
<Style x:Key="Triggers" TargetType="TextBox">
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="true">
<Setter Property = "BorderBrush" Value="{Binding ToYourBorder}"/>
</Trigger>
</Style.Triggers>
</Style>