属性设置几种方式

一、属性设置几种方式
属性:
属性是对XAML元素特征进行描述的方法;属性不允许在XAML中重复设置多次;允许
在托管代码中改变元素的属性值
设置几种方式:
1.1:使用特性语法(属性语法)
1.2:使用属性元素语法
1.3:使用内容元素语法
1.4:使用集合语法
1、使用特性语法(属性语法)
对象的属性通常可表示为对象元素的特性。 特性语法对设置的对象属性命名,后跟赋值
运算符 (=)。 特性的值始终指定为包含在引号中的字符串。
特性语法是最简化的属性设置语法,并且对曾使用过标记语言的开发人员而言是最直观
的语法。

2.使用属性元素语法
对于对象元素的某些属性,无法使用特性语法,因为无法在特性语法的引号和字符串限
制内充分地表达提供属性值所必需的对象或信息。 对于这些情况,可以使用另一个语
法,即属性元素语法。
属性元素开始标记的语法为 <TypeName.PropertyName>。 通常,该标记的内容是类型
的对象元素,属性会将该元素作为其值。 指定内容之后,必须用结束标记结束属性元
素。 结束标记的语法为 </TypeName.PropertyName>。

3、使用内容元素语法
3.1:某些元素的属性支持内容元素语法,允许忽略元素的名称
3.2:实力对象会根据XAML元素中的第一个标记值来设置属性
3.3:对于大量的格式化文本,使用内容元素语法更加灵活

属性标记之间可以插入大量的文本内容:
例子:
某些元素的属性支持内容元素语法,允许忽略元素的名称
实力对象会根据XAML元素中的第一个标记值来设置属性
对于大量的格式化文本,使用内容元素语法更加灵活
属性标记之间可以插入大量的文本内容

4、使用集合语法(放多个值的时候)
XAML 规范要求 XAML 处理器实现来标识值类型为集合的属性。 .NET 中的常规 XAML
处理器实现基于托管代码和 CLR,并通过以下方法之一标识集合类型:
4.1:类型实现 IList 。
4.2:类型实现 IDictionary 。
4.3:类型派生自 Array (有关 XAML 中数组的详细信息,请参阅 X:Array 标记扩展。 )

二、基本属性、附加属性和依赖属性
1、附加属性
1.1:附加属性作用于支持附加属性的元素
1.2:附加属性是由支持附加属性的父元素产生作用,支持附加属性的元素会继承所在的
父元素的属性
1.3:附加属性的格式:AttachedPropertyProvider.PropertyName

2、依赖属性
2.1:英文名称:Dependency Properties
2.2:依赖属性和CRL属性类似,提供一个实例级私有字段的访问封装,通过GetValue和
SetValue访问器实现属性的读写操作
2.3:最重要一个特点是属性值依赖于一个或者多个数据源,提供这些数据源的方式也可
以不同
2.4:由于依赖多数据源的缘故,故称之为依赖属性
一、什么是依赖属性
依赖属性就是一种自己可以没有值,并且可以通过Binding绑定从其他数据源获取值。依
赖属性可支持WPF中的样式设置、数据绑定、继承、动画及默认值。 属性的场景:

  1. 希望可在样式中设置属性。
  2. 希望属性支持数据绑定。
  3. 希望可使用动态资源引用设置属性。
  4. 希望从元素树中的父元素自动继承属性值。
  5. 希望属性可进行动画处理。
  6. 希望属性系统在属性系统、环境或用户执行的操作或者读取并使用样式更改了属性以
    前的值时报告。
  7. 希望使用已建立的、WPF 进程也使用的元数据约定,例如报告更改属性值时是否要求
    布局系统重新编写元素的可视化对象。
    二、依赖属性的特点
    无论什么时候,只要依赖属性的值发生改变,wpf就会自动根据属性的元数据触发一系列
    的动作,这些动作可以重新呈现UI元素,也可以更新当前的布局,刷新数据绑定等等,
    这种变更的通知最有趣的特点之一就是属性触发器,它可以在属性值改变的时候,执行
    一系列自定义的动作,而不需要更改任何其他的代码来实现。通过下面的示例来演示属
    性变更通知

示例:当鼠标移动到Button按钮上面时,文字的前景色变为红色,离开时变为默认颜色
黑色,采用传统方式和依赖属性两种方式实现

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值