首页 > Windows开发 > 详细

WPF | 修改鼠标停留在Button上时的Style

时间:2016-07-13 10:28:18      阅读:286      评论:0      收藏:0      [点我收藏+]

这里用到属性触发器,当Button的IsMouseOver属性值为True时,我们对其样式进行修改,这里以修改Button背景色为例。

首先是启动后未触发时的效果图:

技术分享

 

 

我一开始想到的就是直接修改其Background属性,代码如下:

        <Button Height="30" Width="150" BorderBrush="{x:Null}" BorderThickness="0">
            <Button.Style>
                <Style TargetType="Button">
                    <Setter Property="Background" Value="#dd1144 "/>
                    <Style.Triggers>
                        <Trigger Property="IsMouseOver" Value="True">
                            <Setter Property="Background" Value="#3f48cc"/>
                        </Trigger>
                    </Style.Triggers>
                </Style>
            </Button.Style>
        </Button>

 但是实际运行效果没达到预期,鼠标停留在Button上时仍然是原来自带的样式ORZ(截图截不到鼠标。。。

技术分享

 

 

然后我又做了一个尝试,修改了Button的Template属性,代码如下:

        <Button Height="30" Width="150" BorderBrush="{x:Null}" BorderThickness="0">
            <Button.Style>
                <Style TargetType="Button">
                    <Setter Property="Background" Value="#dd1144 "/>
                    <Style.Triggers>
                        <Trigger Property="IsMouseOver" Value="True">
                            <Setter Property="Template">
                                <Setter.Value>
                                    <ControlTemplate>
                                        <Rectangle Fill="#3f48cc"/>
                                    </ControlTemplate>
                                </Setter.Value>
                            </Setter>
                        </Trigger>
                    </Style.Triggers>
                </Style>
            </Button.Style>
        </Button>

一颗赛艇,这次成功达到预期效果了:

技术分享

 

WPF | 修改鼠标停留在Button上时的Style

原文:http://www.cnblogs.com/NomyfanChan/p/wpf_button_style.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!