WPF TabIndex默认样式修改:去掉默认虚线框、自定义样式(Button控件为例)

去掉Tab选中默认虚线框

Tab键切换时,被选控件自动存在虚线框,有时候为了界面美观,这个虚线框就显得比较麻烦。废话不多说,下面是方法。

<Window.Resources>
    <Style x:Key="MeyFocusVisual" TargetType="{x:Type Button}" >
         <!--去掉默认的Tab选择虚框-->
         <Setter Property="FocusVisualStyle" Value="{x:Null}"/>
     </Style>
</Window.Resources>
...
 <Button Width="200" Height="20" Style="{StaticResource MeyFocusVisual}" >你怎么按Tab也不会出现虚线框了</Button>
 <Button Width="200" Height="20" Style="{StaticResource MeyFocusVisual}" >就是不出来</Button>

很简单是吧。

自定义Tab选中控件样式 

去掉默认样式很简单,设置完属性就好了。爱动手的我们需要想到,在某些特定的场景需求下,我们需要自定义一些比较炫酷选中效果,那需要怎样实现呢?

相信聪明的小宝贝已经想到了,那就是使用WPF强大的Control.Template(控件模板)。下面直接上代码。

<Window.Resources>
      <!--自定义tab选中边框-->
        <Style x:Key="MeyFocusVisual">  
            <Setter Property="Control.Template">
                <Setter.Value>
                    <ControlTemplate>
                        <Rectangle Margin="-2" StrokeThickness="5" Stroke="Red" StrokeDashCap="Triangle"/>
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>
</Window.Resources>
...
 <Button Width="200" Height="20" Style="{StaticResource MeyFocusVisual}" >虽然很难看</Button>
 <Button Width="200" Height="20" Style="{StaticResource MeyFocusVisual}" >但是不一样了</Button>

快去试试,看看有什么效果呢!

总结

WPF的Template(模板)是非常强大,基本上能满足你各式各样、花里胡哨的界面效果需求。

猜你喜欢

转载自blog.csdn.net/YouyoMei/article/details/82873032
今日推荐