• XAML依赖属性和附加 属性


    1.附加属性

    附加属性作用于支持附加属性的元素
    附加属性是由支持附加属性的父元素产生作用,支持附加属性的元素会继承所在的
    父元素的属性
    附加属性的格式<控件元素对象 附加元素对象.附件属性名=属性值/>
    我们可以通过以下几个实例理解附加属性,例如,在布局控件Canvas中定义一个按钮控件,而按钮本身没有任何属性可以控制其在布局控件Canvas中的位置,而在Canvas中,定义了两个依赖属性作为按钮控件的附加属性,帮助按钮控制在Canvas中的位置,其代码如下:
    1. <Canvas>
    2. <Button Canvas.Left=”25” Canvas.Top=”30” />
    3. Canvas>

     2.依赖属性

    英语名称:Dependency Properties

    依赖属性和和CRL属性类似,提供一个实例级私有字段的访问封装,通过GetValue

    SetValue 访问器实现属性的读写操作
    最重要一个特点是属性值依赖于一个或者多个数据源,提供这些数据源的方式也可
    以不同
    由于依赖多数据源的缘故,故称之为依赖属性
    依赖属性可以通过不同类型的数据源进行赋值,其赋值顺序的不同影响着属性值的改变.为了能够获取准确的依赖属性值,需要了解不同数据源的优先级别,如下图:

     

    1. 从图中可以看到,应用动画占有对以来属性控制的最高优先级,简单理解,无论动画代码定义在当前页面内,还是定义在模板代码内,动画都将获得对页面内依赖属性的最优先控制权。

    2. 次一级优先权是依赖属性本地化操作,分别包括其中包括依赖属性赋值,数据绑定,资源引用等。依赖属性使用方式和CLR属性使用类似,可以使用以下格式对依赖属性进行赋值操作:

    元素对象.依赖属性=属性值

    例如:button.width=200

    3. 第三优先权是数据模板和控件模板对依赖属性的控制;

    4. 其次是样式控制器对依赖属性的控制优先权;

    5. 最低的依赖属性控制优先权是在定义依赖属性时使用GetValue和SetValue对属性默认的赋值。

    开发人员可以通过对依赖属性不同优先权的控制,操作页面属性值,使控件或者页面达到需求运行效果。

  • 相关阅读:
    机器学习—梯度下降Gradient Descent Optimization—c语言实现
    ZZULIOJ 1105: 判断友好数对(函数专题) (C/C++)
    大数据学习:使用Vim编辑器
    国产化之银河麒麟.netcore3.1访问https服务的两个问题
    NodeJS @kubernetes/client-node连接到kubernetes集群的方法
    记录vector中resize()函数的功能
    【Matplotlib】plt.plot() X轴横坐标展示完整整数坐标
    “最熟悉的陌生人”之Elsevier出版社全解说
    最小二乘法参数拟合
    2022.8.29-9.4 AI行业周刊(第113期):世界人工智能大会
  • 原文地址:https://blog.csdn.net/weixin_49758946/article/details/126324386