依赖属性中的属性变更通知

依赖属性中的属性变更通知

开发工具与关键技术:Visual Studio 2015、WPF
作者:黄元进
撰写时间: 2019年5月24日

首先来了解一下什么是依赖属性,依赖属性就是一种自己可以没有值,并且可以通过绑定从其他数据源获取值。依赖属性可支持WPF中的样式设置、数据绑定、继承、动画及默认值。然后就是属性变更通知:无论什么时候,只要依赖属性的值发生改变,wpf就会自动根据属性的元数据触发一系列的动作,这些动作可以重新呈现UI元素,也可以更新当前的布局,刷新数据绑定等等,示例:当鼠标移动到Button按钮上面时,文字的前景色变为红色,离开时变为默认颜色黑色。用依赖属性方法实现 XAML代码如下:

<Window x:Class="依赖属性.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:依赖属性"
        mc:Ignorable="d"
        Title="MainWindow" Height="350" Width="525"
        WindowStartupLocation="CenterScreen">
    <Grid>
        <Button Height="30" Width="150" Content="莫挨我,会脸红(#^.^#)">
            <Button.Style>
                <Style TargetType="Button">
                    <Style.Triggers>
                        <Trigger Property="IsMouseOver" Value="true">
                            <Setter Property="Foreground" Value="Red"></Setter>
                        </Trigger>
                    </Style.Triggers>
                </Style>
            </Button.Style>
        </Button>
    </Grid>
</Window>

说明:在判断属性IsMouseOver的值为false的时候,自动将Foreground的值改为之前的值,因此就不需要写IsMouseOver的值为false的时候,将Foreground的值改为Black。

改变Button按钮的前景色效果图如下:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_44547949/article/details/90520607
今日推荐