属性触发器

 4. 属性触发器

    使用触发器,可以动态修改控件的外观和操作方式,因为一些事件或属性值改变了。例如用户在按钮上移动鼠标,按钮就会改变其外观。通常,这必须在C#代码中实现,但使用WPF也可以用XAML实现,而这只会影响UI。

    下面首先介绍属性触发器

 <Style x:Key="TextBoxStyle" TargetType="{x:Type TextBox}">
        <Setter Property="Background" Value="LightBlue"/>
        <Setter Property="FontSize" Value="17"/>
        <Style.Triggers>
            <Trigger Property="IsMouseOver" Value="True">
                    <Setter Property="Background">
                        <Setter.Value>
                            <LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
                                <GradientStop Offset="0" Color="LightBlue"/>
                                <GradientStop Offset="0.4" Color="Cyan"/>
                                <GradientStop Offset="0.8" Color="LightCyan"/>
                            </LinearGradientBrush>
                        </Setter.Value>
                    </Setter>
                    <Setter Property="FontSize" Value="22"/>
            </Trigger>
            <Trigger Property="IsKeyboardFocused" Value="True">
                <Setter Property="Background" Value="Yellow"/>
                <Setter Property="FontSize" Value="22"/>
            </Trigger>
        </Style.Triggers>
    </Style>
    </Window.Resources>
    <Canvas>
        <TextBox Canvas.Top="80" Canvas.Left="30" Width="200" Style="{StaticResource TextBoxStyle}"/>
        <TextBox Canvas.Top="120" Canvas.Left="30" Width="200" Style="{StaticResource TextBoxStyle}"/>
    </Canvas>

  Style类中有一个Triggers属性,通过它可以指定属性触发器.

  在触发器的属性中赋予IsMouseOver Value设置True时触发Setter设置的属性内容

  将鼠标放置在TextBox上,呈现如下图.

  

转载于:https://www.cnblogs.com/hdsong/p/5068267.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值