WPF-数据触发器

触发器基本上使您能够更改属性值或根据属性值采取行动。因此,它允许您动态地更改控件的外观和/或行为,而无需创建新的控件。
当满足某些条件时,触发器用于更改任何给定属性的值。触发器通常在应用于特定控件的样式或文档根中定义。有三种类型的触发器
• 属性触发器
• 数据触发器
• 事件触发器

数据触发器
当绑定数据满足某些条件时,数据触发器执行某些操作。让我们看看下面的XAML代码,其中创建了一个带有一些属性的复选框和文本块。选中该复选框时,它将将其前景色更改为红色。

<Window x:Class="trigger.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:trigger"
        mc:Ignorable="d"
        Title="MainWindow" Height="350" Width="525">
    <StackPanel HorizontalAlignment = "Center">
        <CheckBox x:Name = "redColorCheckBox" 
            Content = "Set red as foreground color" Margin = "20"/>
        <TextBlock Name = "txtblock" VerticalAlignment = "Center" 
            Text = "Event Trigger" FontSize = "24" Margin = "20">
            <TextBlock.Style>
                <Style>
                    <Style.Triggers>
                        <DataTrigger Binding = "{Binding ElementName = redColorCheckBox, Path = IsChecked}" 
                        Value = "true">
                            <Setter Property = "TextBlock.Foreground" Value = "Red"/>
                            <Setter Property = "TextBlock.Cursor" Value = "Hand" />
                        </DataTrigger>
                    </Style.Triggers>
                </Style>
            </TextBlock.Style>
        </TextBlock>
    </StackPanel>
</Window>

执行上述代码时,它将产生以下窗口:
在这里插入图片描述
勾选该复选框后,文本块的前景色将变为红色。
在这里插入图片描述

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值