AmbientPropertyValue 类

定义

报告有关环境属性的信息,作为 IAmbientProvider 实现的一部分。

public ref class AmbientPropertyValue
public class AmbientPropertyValue
type AmbientPropertyValue = class
Public Class AmbientPropertyValue
继承
AmbientPropertyValue

注解

AmbientPropertyValue 表示通过调用 IAmbientProvider 服务方法返回的信息项。 方法 GetAll 返回项的 AmbientPropertyValue 枚举或数组; GetFirst 方法返回单个 AmbientPropertyValue项。

关于环境属性

环境属性是一个属性,其属性值应可用于 XAML 节点结构中的值转换器用法及其下方的对象图。 环境概念与 XAML 处理器在加载路径的对象写入阶段或保存路径的序列化阶段相关。

也可以将类型特性化为环境。 在这种情况下,使用特性化类型的所有属性都报告为环境。

在加载路径情况下,环境属性值可能会影响对象图生成的其他属性的值,这些属性存在于 XAML 节点结构中。 当作为 XAML 节点流进行处理时,环境概念意味着环境属性值必须可用于类型转换器和标记扩展。StartObject EndObject 同样,用于保存路径的类型转换器或标记扩展可以查找环境属性及其值。 因此,生成的 XAML 是更好的往返表示形式。

根据语言定义,XAML 不指定必须处理对象成员的顺序。 但是,XAML 读取器必须首先处理任何环境属性值,以便其他属性中包含的类型转换器和标记扩展用法可以通过服务访问它 IAmbientProvider

DependsOn 是一个同样影响 XAML 节点处理顺序的概念。 但是, DependsOn 只能用于对等成员和节点关系;它不能影响所有后代。 此外, DependsOn 直接影响对象图形属性设置,而环境技术依赖于类型转换器或标记扩展。 在环境技术中,还必须有特定的类型转换器或标记扩展定义。 它由每个类型转换器或标记扩展决定应如何解释环境属性值并将其应用于使用类型转换器或标记扩展的对象图形位置。

WPF 用法说明

WPF 功能集中演示的环境属性方案是 Style.TargetType,它可以限定其他值所需的属性名称查找。 在这种情况下,该值 Style.TargetType 限定 Setter.Property 其下 XAML 节点中的值。 Setter.Property将类型转换器行为用于 .DependencyProperty 此行为通过从可用于类型转换器和标记扩展的服务上下文查询GetFirstAmbientValue来访问环境Style.TargetType值。

构造函数

AmbientPropertyValue(XamlMember, Object)

初始化 AmbientPropertyValue 类的新实例。

属性

RetrievedProperty

获取表示环境属性的 XAML 类型系统标识符 (XamlMember)。

Value

获取环境属性的值。

方法

Equals(Object)

确定指定对象是否等于当前对象。

(继承自 Object)
GetHashCode()

作为默认哈希函数。

(继承自 Object)
GetType()

获取当前实例的 Type

(继承自 Object)
MemberwiseClone()

创建当前 Object 的浅表副本。

(继承自 Object)
ToString()

返回表示当前对象的字符串。

(继承自 Object)

适用于

另请参阅