FrameworkPropertyMetadata 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
为依赖属性报告或应用元数据(从而专门添加特定于框架的属性系统特征)。
public ref class FrameworkPropertyMetadata : System::Windows::UIPropertyMetadata
public class FrameworkPropertyMetadata : System.Windows.UIPropertyMetadata
type FrameworkPropertyMetadata = class
inherit UIPropertyMetadata
Public Class FrameworkPropertyMetadata
Inherits UIPropertyMetadata
- 继承
示例
以下示例获取特定所有者上的依赖属性的元数据作为初始基 PropertyMetadata 类型。 该元数据将强制转换为 FrameworkPropertyMetadata。 如果强制转换返回了有效的 FrameworkPropertyMetadata,则通过简单的 UI 报告各种 FrameworkPropertyMetadata 属性值, () 不显示。
pm = dp.GetMetadata(dp.OwnerType);
pm = dp.GetMetadata(dp.OwnerType)
FrameworkPropertyMetadata fpm = pm as FrameworkPropertyMetadata;
if (fpm!=null) {
AffectsArrange.Text = (fpm.AffectsArrange) ? "Yes" : "No";
AffectsMeasure.Text = (fpm.AffectsMeasure) ? "Yes" : "No";
AffectsRender.Text = (fpm.AffectsRender) ? "Yes" : "No";
Inherits.Text = (fpm.Inherits) ? "Yes" : "No";
IsDataBindingAllowed.Text = (fpm.IsDataBindingAllowed) ? "Yes" : "No";
BindsTwoWayByDefault.Text = (fpm.BindsTwoWayByDefault) ? "Yes" : "No";
}
Dim fpm As FrameworkPropertyMetadata = TryCast(pm, FrameworkPropertyMetadata)
If fpm IsNot Nothing Then
AffectsArrange.Text = If((fpm.AffectsArrange), "Yes", "No")
AffectsMeasure.Text = If((fpm.AffectsMeasure), "Yes", "No")
AffectsRender.Text = If((fpm.AffectsRender), "Yes", "No")
[Inherits].Text = If((fpm.Inherits), "Yes", "No")
IsDataBindingAllowed.Text = If((fpm.IsDataBindingAllowed), "Yes", "No")
BindsTwoWayByDefault.Text = If((fpm.BindsTwoWayByDefault), "Yes", "No")
注解
此类派生自 PropertyMetadata () UIPropertyMetadata 。 对于大多数 WPF 框架级应用程序开发目的, FrameworkPropertyMetadata 是用于依赖属性元数据的类型,而不是基本元数据类型 PropertyMetadata 或 UIPropertyMetadata。 这既适用于现有依赖属性,也适用于大多数自定义依赖属性方案。
此类声明的对基类进行补充 PropertyMetadata 的成员包括指定或报告 WPF 框架级属性系统行为(如属性继承、数据绑定和布局)的各种布尔属性。
用于创建 FrameworkPropertyMetadata 实例的多个构造函数签名采用 FrameworkPropertyMetadataOptions 参数。 枚举 FrameworkPropertyMetadataOptions 仅用于指定构造函数中的初始行为,在构造后 FrameworkPropertyMetadata 不会以其他方式公开。 从构造实例中,可以通过共享构造函数调用中使用的枚举值的名称的各种属性获取或设置相应的信息。
XAML 文本用法
此类通常不用于 XAML。
构造函数
属性
AffectsArrange |
获取或设置一个值,该值表示依赖属性是否会影响布局引擎操作期间的排列过程。 |
AffectsMeasure |
获取或设置一个值,该值表示依赖属性是否会影响布局引擎操作期间的测量过程。 |
AffectsParentArrange |
获取或设置一个值,该值表示依赖属性是否会影响布局引擎操作期间父元素布局的排列处理过程。 |
AffectsParentMeasure |
获取或设置一个值,该值表示依赖属性是否会影响布局引擎操作期间其父元素布局的测量过程。 |
AffectsRender |
获取或设置一个值,该值指示依赖属性是否会以某种方式(这种方式不会具体影响排列或测量,但将请求重绘)对常规布局造成潜在影响。 |
BindsTwoWayByDefault |
获取或设置一个值,该值指示默认情况下属性是否双向绑定。 |
CoerceValueCallback |
获取或设置对此元数据中所指定 CoerceValueCallback 实现的引用。 (继承自 PropertyMetadata) |
DefaultUpdateSourceTrigger |
获取或设置在应用具有该元数据的属性的绑定时要使用的 UpdateSourceTrigger 的默认值,这些绑定的 UpdateSourceTrigger 设置为 Default。 |
DefaultValue |
获取或设置依赖属性的默认值。 (继承自 PropertyMetadata) |
Inherits |
获取或设置一个值,该值指示依赖属性的值是否可继承。 |
IsAnimationProhibited |
获取或设置一个值,声明是否应在应用了包含元数据实例的依赖项对象上禁用动画。 (继承自 UIPropertyMetadata) |
IsDataBindingAllowed |
获取一个值,该值指示依赖属性是否支持数据绑定。 |
IsNotDataBindable |
获取或设置一个值,该值指示依赖属性是否支持数据绑定。 |
IsSealed |
获取一个值,该值确定是否已通过某种方式将元数据应用于属性,从而导致该元数据实例变为不可变状态。 (继承自 PropertyMetadata) |
Journal |
获取或设置一个值,该值表示该属性是否包含应用程序可以或应该作为日记功能实现的一部分而存储的日记信息。 |
OverridesInheritanceBehavior |
获取或设置一个值,该值指示属性值继承计算是否应跨越元素逻辑树中的某些内容边界。 |
PropertyChangedCallback |
获取或设置对此元数据中所指定 PropertyChangedCallback 实现的引用。 (继承自 PropertyMetadata) |
SubPropertiesDoNotAffectRender |
获取或设置一个值,该值指示依赖属性的子属性是否影响包含对象的呈现。 |
方法
Equals(Object) |
确定指定对象是否等于当前对象。 (继承自 Object) |
GetHashCode() |
作为默认哈希函数。 (继承自 Object) |
GetType() |
获取当前实例的 Type。 (继承自 Object) |
MemberwiseClone() |
创建当前 Object 的浅表副本。 (继承自 Object) |
Merge(PropertyMetadata, DependencyProperty) |
允许合并源元数据和基本元数据。 |
OnApply(DependencyProperty, Type) |
当此元数据已经应用到一个属性时(这表明正在密封元数据)调用。 |
ToString() |
返回表示当前对象的字符串。 (继承自 Object) |