FrameworkPropertyMetadata 构造函数
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
初始化 FrameworkPropertyMetadata 类的新实例。
重载
FrameworkPropertyMetadata()
初始化 FrameworkPropertyMetadata 类的新实例。
public:
FrameworkPropertyMetadata();
public FrameworkPropertyMetadata ();
Public Sub New ()
注解
此签名将 的所有值 FrameworkPropertyMetadata 初始化为其属性默认值。
DefaultValue 将为 null
,而各种 FrameworkPropertyMetadata 布尔属性将为 false
。
另请参阅
适用于
FrameworkPropertyMetadata(Object)
使用指定的默认值初始化 FrameworkPropertyMetadata 类的新实例。
public:
FrameworkPropertyMetadata(System::Object ^ defaultValue);
public FrameworkPropertyMetadata (object defaultValue);
new System.Windows.FrameworkPropertyMetadata : obj -> System.Windows.FrameworkPropertyMetadata
Public Sub New (defaultValue As Object)
参数
- defaultValue
- Object
依赖项属性的默认值,通常作为特定类型的值提供。
例外
将 defaultValue
设置为 UnsetValue。
示例
以下示例调用此构造函数签名:
static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(Double.NaN);
注解
为 defaultValue
提供的值的类型必须与将在应用此元数据的依赖属性的原始注册中指定的类型匹配或相关。 元数据默认值类型与应用它的依赖属性类型之间的不匹配可能难以调试,因为在编译期间无法检测到不匹配。 属性系统在运行时之前不会评估属性的有效值,因此默认值类型/属性类型不匹配的结果是运行时错误。
该值 UnsetValue 在属性系统中具有特殊含义,不能用作依赖属性默认值。
另请参阅
适用于
FrameworkPropertyMetadata(PropertyChangedCallback)
用指定的 FrameworkPropertyMetadata 回调初始化 PropertyChangedCallback 类的新实例。
public:
FrameworkPropertyMetadata(System::Windows::PropertyChangedCallback ^ propertyChangedCallback);
public FrameworkPropertyMetadata (System.Windows.PropertyChangedCallback propertyChangedCallback);
new System.Windows.FrameworkPropertyMetadata : System.Windows.PropertyChangedCallback -> System.Windows.FrameworkPropertyMetadata
Public Sub New (propertyChangedCallback As PropertyChangedCallback)
参数
- propertyChangedCallback
- PropertyChangedCallback
对处理程序实现的引用,每当属性的有效值更改时,属性系统都会调用此处理程序实现。
示例
以下示例调用此构造函数签名:
static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(new PropertyChangedCallback(OnCurrentReadingChanged));
适用于
FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions)
使用提供的默认值和框架级别的元数据选项初始化 FrameworkPropertyMetadata 类的新实例。
public:
FrameworkPropertyMetadata(System::Object ^ defaultValue, System::Windows::FrameworkPropertyMetadataOptions flags);
public FrameworkPropertyMetadata (object defaultValue, System.Windows.FrameworkPropertyMetadataOptions flags);
new System.Windows.FrameworkPropertyMetadata : obj * System.Windows.FrameworkPropertyMetadataOptions -> System.Windows.FrameworkPropertyMetadata
Public Sub New (defaultValue As Object, flags As FrameworkPropertyMetadataOptions)
参数
- defaultValue
- Object
依赖项属性的默认值,通常作为特定类型的值提供。
元数据选项标志(FrameworkPropertyMetadataOptions 值的组合)。 这些选项指定依赖项对象的特性,如布局或数据绑定,它们与系统进行交互。
例外
将 defaultValue
设置为 UnsetValue。
示例
以下示例调用此构造函数签名:
static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(
Double.NaN,
(FrameworkPropertyMetadataOptions.AffectsRender |
FrameworkPropertyMetadataOptions.BindsTwoWayByDefault)
);
注解
为 defaultValue
提供的值的类型必须与将在应用此元数据的依赖属性的原始注册中指定的类型匹配或相关。 元数据默认值类型与应用它的依赖属性类型之间的不匹配可能难以调试,因为在编译期间无法检测到不匹配。 属性系统在运行时之前不会评估属性的有效值,因此默认值类型/属性类型不匹配的结果是运行时错误。
该值 UnsetValue 在属性系统中具有特殊含义,不能用作依赖属性默认值。
参数中flags
标记为集标志的值会将与该FrameworkPropertyMetadataOptions标志的名称匹配的属性FrameworkPropertyMetadata的布尔值设置为 true
。 随后,只要元数据尚未应用于特定的属性系统操作,就可以更改元数据中的属性值。
另请参阅
适用于
FrameworkPropertyMetadata(Object, PropertyChangedCallback)
使用提供的默认值和指定的 FrameworkPropertyMetadata 回调初始化 PropertyChangedCallback 类的新实例。
public:
FrameworkPropertyMetadata(System::Object ^ defaultValue, System::Windows::PropertyChangedCallback ^ propertyChangedCallback);
public FrameworkPropertyMetadata (object defaultValue, System.Windows.PropertyChangedCallback propertyChangedCallback);
new System.Windows.FrameworkPropertyMetadata : obj * System.Windows.PropertyChangedCallback -> System.Windows.FrameworkPropertyMetadata
Public Sub New (defaultValue As Object, propertyChangedCallback As PropertyChangedCallback)
参数
- defaultValue
- Object
依赖项属性的默认值,通常作为特定类型的值提供。
- propertyChangedCallback
- PropertyChangedCallback
对处理程序实现的引用,每当属性的有效值更改时,属性系统都会调用此处理程序实现。
例外
将 defaultValue
设置为 UnsetValue。
示例
以下示例调用此构造函数签名:
static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(
Double.NaN,
new PropertyChangedCallback(OnCurrentReadingChanged)
);
注解
为 defaultValue
提供的值的类型必须与将在应用此元数据的依赖属性的原始注册中指定的类型匹配或相关。 元数据默认值类型与应用它的依赖属性类型之间的不匹配可能难以调试,因为在编译期间无法检测到不匹配。 属性系统在运行时之前不会评估属性的有效值,因此默认值类型/属性类型不匹配的结果是运行时错误。
该值 UnsetValue 在属性系统中具有特殊含义,不能用作依赖属性默认值。
另请参阅
适用于
FrameworkPropertyMetadata(PropertyChangedCallback, CoerceValueCallback)
用指定的回调初始化 FrameworkPropertyMetadata 类的新实例。
public:
FrameworkPropertyMetadata(System::Windows::PropertyChangedCallback ^ propertyChangedCallback, System::Windows::CoerceValueCallback ^ coerceValueCallback);
public FrameworkPropertyMetadata (System.Windows.PropertyChangedCallback propertyChangedCallback, System.Windows.CoerceValueCallback coerceValueCallback);
new System.Windows.FrameworkPropertyMetadata : System.Windows.PropertyChangedCallback * System.Windows.CoerceValueCallback -> System.Windows.FrameworkPropertyMetadata
Public Sub New (propertyChangedCallback As PropertyChangedCallback, coerceValueCallback As CoerceValueCallback)
参数
- propertyChangedCallback
- PropertyChangedCallback
对处理程序实现的引用,每当属性的有效值更改时,属性系统都会调用此处理程序实现。
- coerceValueCallback
- CoerceValueCallback
对处理程序实现的引用,每当属性系统调用此依赖项对象的 CoerceValue(DependencyProperty) 时,都会调用此处理程序实现。
示例
以下示例调用此构造函数签名:
static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(
new PropertyChangedCallback(OnCurrentReadingChanged),
new CoerceValueCallback(CoerceCurrentReading)
);
注解
此实现调用基初始值设定项,然后通过在基实例上设置 属性来添加 coerceValueCallback
。
另请参阅
适用于
FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions, PropertyChangedCallback)
使用提供的默认值和框架元数据选项及指定的 FrameworkPropertyMetadata 回调初始化 PropertyChangedCallback 类的新实例。
public:
FrameworkPropertyMetadata(System::Object ^ defaultValue, System::Windows::FrameworkPropertyMetadataOptions flags, System::Windows::PropertyChangedCallback ^ propertyChangedCallback);
public FrameworkPropertyMetadata (object defaultValue, System.Windows.FrameworkPropertyMetadataOptions flags, System.Windows.PropertyChangedCallback propertyChangedCallback);
new System.Windows.FrameworkPropertyMetadata : obj * System.Windows.FrameworkPropertyMetadataOptions * System.Windows.PropertyChangedCallback -> System.Windows.FrameworkPropertyMetadata
Public Sub New (defaultValue As Object, flags As FrameworkPropertyMetadataOptions, propertyChangedCallback As PropertyChangedCallback)
参数
- defaultValue
- Object
依赖项属性的默认值,通常作为特定类型的值提供。
元数据选项标志(FrameworkPropertyMetadataOptions 值的组合)。 这些选项指定依赖项对象的特性,如布局或数据绑定,它们与系统进行交互。
- propertyChangedCallback
- PropertyChangedCallback
对处理程序实现的引用,每当属性的有效值更改时,属性系统都会调用此处理程序实现。
例外
将 defaultValue
设置为 UnsetValue。
示例
以下示例调用此构造函数签名:
static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(
Double.NaN,
(FrameworkPropertyMetadataOptions.AffectsRender |
FrameworkPropertyMetadataOptions.BindsTwoWayByDefault),
new PropertyChangedCallback(OnCurrentReadingChanged)
);
注解
为 defaultValue
提供的值的类型必须与将在应用此元数据的依赖属性的原始注册中指定的类型匹配或相关。 元数据默认值类型与应用它的依赖属性类型之间的不匹配可能难以调试,因为在编译期间无法检测到不匹配。 属性系统在运行时之前不会评估属性的有效值,因此默认值类型/属性类型不匹配的结果是运行时错误。
该值 UnsetValue 在属性系统中具有特殊含义,不能用作依赖属性默认值。
参数中flags
标记为集标志的值会将与该FrameworkPropertyMetadataOptions标志的名称匹配的属性FrameworkPropertyMetadata的布尔值设置为 true
。 只要元数据尚未应用于特定的属性系统操作,你仍然可以更改元数据中的属性值。
另请参阅
适用于
FrameworkPropertyMetadata(Object, PropertyChangedCallback, CoerceValueCallback)
使用提供的默认值和指定的回调初始化 FrameworkPropertyMetadata 类的新实例。
public:
FrameworkPropertyMetadata(System::Object ^ defaultValue, System::Windows::PropertyChangedCallback ^ propertyChangedCallback, System::Windows::CoerceValueCallback ^ coerceValueCallback);
public FrameworkPropertyMetadata (object defaultValue, System.Windows.PropertyChangedCallback propertyChangedCallback, System.Windows.CoerceValueCallback coerceValueCallback);
new System.Windows.FrameworkPropertyMetadata : obj * System.Windows.PropertyChangedCallback * System.Windows.CoerceValueCallback -> System.Windows.FrameworkPropertyMetadata
Public Sub New (defaultValue As Object, propertyChangedCallback As PropertyChangedCallback, coerceValueCallback As CoerceValueCallback)
参数
- defaultValue
- Object
依赖项属性的默认值,通常作为特定类型提供。
- propertyChangedCallback
- PropertyChangedCallback
对处理程序实现的引用,每当属性的有效值更改时,属性系统都会调用此处理程序实现。
- coerceValueCallback
- CoerceValueCallback
对处理程序实现的引用,每当属性系统调用该依赖项对象的 CoerceValue(DependencyProperty) 时,都会调用此处理程序实现。
例外
将 defaultValue
设置为 UnsetValue。
示例
以下示例调用此构造函数签名:
static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(
Double.NaN,
new PropertyChangedCallback(OnCurrentReadingChanged),
new CoerceValueCallback(CoerceCurrentReading)
);
注解
为 defaultValue
提供的值的类型必须与将在应用此元数据的依赖属性的原始注册中指定的类型匹配或相关。 元数据默认值类型与应用它的依赖属性类型之间的不匹配可能难以调试,因为在编译期间无法检测到不匹配。 属性系统在运行时之前不会评估属性的有效值,因此默认值类型/属性类型不匹配的结果是运行时错误。
该值 UnsetValue 在属性系统中具有特殊含义,不能用作依赖属性默认值。
另请参阅
适用于
FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions, PropertyChangedCallback, CoerceValueCallback)
使用提供的默认值和框架元数据选项及指定的回调初始化 FrameworkPropertyMetadata 类的新实例。
public:
FrameworkPropertyMetadata(System::Object ^ defaultValue, System::Windows::FrameworkPropertyMetadataOptions flags, System::Windows::PropertyChangedCallback ^ propertyChangedCallback, System::Windows::CoerceValueCallback ^ coerceValueCallback);
public FrameworkPropertyMetadata (object defaultValue, System.Windows.FrameworkPropertyMetadataOptions flags, System.Windows.PropertyChangedCallback propertyChangedCallback, System.Windows.CoerceValueCallback coerceValueCallback);
new System.Windows.FrameworkPropertyMetadata : obj * System.Windows.FrameworkPropertyMetadataOptions * System.Windows.PropertyChangedCallback * System.Windows.CoerceValueCallback -> System.Windows.FrameworkPropertyMetadata
Public Sub New (defaultValue As Object, flags As FrameworkPropertyMetadataOptions, propertyChangedCallback As PropertyChangedCallback, coerceValueCallback As CoerceValueCallback)
参数
- defaultValue
- Object
依赖项属性的默认值,通常作为特定类型提供。
元数据选项标志(FrameworkPropertyMetadataOptions 值的组合)。 这些选项指定依赖项对象的特性,如布局或数据绑定,它们与系统进行交互。
- propertyChangedCallback
- PropertyChangedCallback
对处理程序实现的引用,每当属性的有效值更改时,属性系统都会调用此处理程序实现。
- coerceValueCallback
- CoerceValueCallback
对处理程序实现的引用,每当属性系统调用该属性的 CoerceValue(DependencyProperty) 时,都会调用此处理程序实现。
例外
将 defaultValue
设置为 UnsetValue。
示例
以下示例调用此构造函数签名:
static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(
Double.NaN,
(FrameworkPropertyMetadataOptions.AffectsRender |
FrameworkPropertyMetadataOptions.BindsTwoWayByDefault),
new PropertyChangedCallback(OnCurrentReadingChanged),
new CoerceValueCallback(CoerceCurrentReading)
);
注解
为 defaultValue
提供的值的类型必须与将在应用此元数据的依赖属性的原始注册中指定的类型匹配或相关。 元数据默认值类型与应用它的依赖属性类型之间的不匹配可能难以调试,因为在编译期间无法检测到不匹配。 属性系统在运行时之前不会评估属性的有效值,因此默认值类型/属性类型不匹配的结果是运行时错误。
该值 UnsetValue 在属性系统中具有特殊含义,不能用作依赖属性默认值。
参数中flags
标记为集标志的值会将与该FrameworkPropertyMetadataOptions标志的名称匹配的属性FrameworkPropertyMetadata的布尔值设置为 true
。 只要元数据尚未应用于特定的属性系统操作,你仍然可以更改元数据中的属性值。
另请参阅
适用于
FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions, PropertyChangedCallback, CoerceValueCallback, Boolean)
使用提供的默认值和框架元数据选项、指定的回调及可以用来防止属性动画的布尔值初始化 FrameworkPropertyMetadata 类的新实例。
public:
FrameworkPropertyMetadata(System::Object ^ defaultValue, System::Windows::FrameworkPropertyMetadataOptions flags, System::Windows::PropertyChangedCallback ^ propertyChangedCallback, System::Windows::CoerceValueCallback ^ coerceValueCallback, bool isAnimationProhibited);
public FrameworkPropertyMetadata (object defaultValue, System.Windows.FrameworkPropertyMetadataOptions flags, System.Windows.PropertyChangedCallback propertyChangedCallback, System.Windows.CoerceValueCallback coerceValueCallback, bool isAnimationProhibited);
new System.Windows.FrameworkPropertyMetadata : obj * System.Windows.FrameworkPropertyMetadataOptions * System.Windows.PropertyChangedCallback * System.Windows.CoerceValueCallback * bool -> System.Windows.FrameworkPropertyMetadata
Public Sub New (defaultValue As Object, flags As FrameworkPropertyMetadataOptions, propertyChangedCallback As PropertyChangedCallback, coerceValueCallback As CoerceValueCallback, isAnimationProhibited As Boolean)
参数
- defaultValue
- Object
依赖项属性的默认值,通常作为特定类型提供。
元数据选项标志(FrameworkPropertyMetadataOptions 值的组合)。 这些选项指定依赖项对象的特性,如布局或数据绑定,它们与系统进行交互。
- propertyChangedCallback
- PropertyChangedCallback
对处理程序实现的引用,每当属性的有效值更改时,属性系统都会调用此处理程序实现。
- coerceValueCallback
- CoerceValueCallback
对处理程序实现的引用,每当属性系统调用该依赖项对象的 CoerceValue(DependencyProperty) 时,都会调用此处理程序实现。
- isAnimationProhibited
- Boolean
若为 true
,则防止属性系统对要应用此元数据的属性进行动画处理。 如果尝试对此类属性进行动画处理,则它们会引发源自属性系统的运行时异常。 若为 false
,则允许对属性进行动画处理。 默认值为 false
。
例外
将 defaultValue
设置为 UnsetValue。
示例
以下示例调用此构造函数签名:
static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(
Double.NaN,
(FrameworkPropertyMetadataOptions.AffectsRender |
FrameworkPropertyMetadataOptions.BindsTwoWayByDefault),
new PropertyChangedCallback(OnCurrentReadingChanged),
new CoerceValueCallback(CoerceCurrentReading),
true //Animation prohibited
);
注解
为 defaultValue
提供的值的类型必须与此元数据将应用到的依赖属性的原始注册中指定的类型匹配或相关。 元数据默认值类型与应用它的依赖属性类型之间的不匹配可能难以调试,因为在编译期间无法检测到不匹配。 属性系统在运行时之前不会评估属性的有效值,因此默认值类型/属性类型不匹配的结果是运行时错误。
值 UnsetValue 在属性系统中具有特殊含义,不能用作依赖属性默认值。
参数isAnimationProhibited
设置由直接基UIPropertyMetadata类声明的属性的初始值IsAnimationProhibited。
参数中flags
标记为设置标志的值会将与该FrameworkPropertyMetadataOptions标志的名称匹配的属性的布尔值FrameworkPropertyMetadata设置为 true
。 只要元数据尚未应用于特定的属性系统操作,你仍然可以更改元数据中的属性值。
另请参阅
适用于
FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions, PropertyChangedCallback, CoerceValueCallback, Boolean, UpdateSourceTrigger)
使用提供的默认值和框架元数据选项、指定的回调、可以用来防止属性动画的布尔值及数据绑定更新触发器默认值初始化 FrameworkPropertyMetadata 类的新实例。
public:
FrameworkPropertyMetadata(System::Object ^ defaultValue, System::Windows::FrameworkPropertyMetadataOptions flags, System::Windows::PropertyChangedCallback ^ propertyChangedCallback, System::Windows::CoerceValueCallback ^ coerceValueCallback, bool isAnimationProhibited, System::Windows::Data::UpdateSourceTrigger defaultUpdateSourceTrigger);
public FrameworkPropertyMetadata (object defaultValue, System.Windows.FrameworkPropertyMetadataOptions flags, System.Windows.PropertyChangedCallback propertyChangedCallback, System.Windows.CoerceValueCallback coerceValueCallback, bool isAnimationProhibited, System.Windows.Data.UpdateSourceTrigger defaultUpdateSourceTrigger);
new System.Windows.FrameworkPropertyMetadata : obj * System.Windows.FrameworkPropertyMetadataOptions * System.Windows.PropertyChangedCallback * System.Windows.CoerceValueCallback * bool * System.Windows.Data.UpdateSourceTrigger -> System.Windows.FrameworkPropertyMetadata
Public Sub New (defaultValue As Object, flags As FrameworkPropertyMetadataOptions, propertyChangedCallback As PropertyChangedCallback, coerceValueCallback As CoerceValueCallback, isAnimationProhibited As Boolean, defaultUpdateSourceTrigger As UpdateSourceTrigger)
参数
- defaultValue
- Object
依赖项属性的默认值,通常作为特定类型提供。
元数据选项标志(FrameworkPropertyMetadataOptions 值的组合)。 这些选项指定依赖项对象的特性,如布局或数据绑定,它们与系统进行交互。
- propertyChangedCallback
- PropertyChangedCallback
对处理程序实现的引用,每当属性的有效值更改时,属性系统都会调用此处理程序实现。
- coerceValueCallback
- CoerceValueCallback
对处理程序实现的引用,每当属性系统调用该属性的 CoerceValue(DependencyProperty) 时,都会调用此处理程序实现。
- isAnimationProhibited
- Boolean
若为 true
,则防止属性系统对要应用此元数据的属性进行动画处理。 如果尝试对此类属性进行动画处理,则它们会引发源自属性系统的运行时异常。 默认值为 false
。
- defaultUpdateSourceTrigger
- UpdateSourceTrigger
应用此属性的绑定时使用的 UpdateSourceTrigger,其 UpdateSourceTrigger 设置为 Default。
例外
将 defaultValue
设置为 UnsetValue。
示例
static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(
Double.NaN,
(FrameworkPropertyMetadataOptions.AffectsRender |
FrameworkPropertyMetadataOptions.BindsTwoWayByDefault),
new PropertyChangedCallback(OnCurrentReadingChanged),
new CoerceValueCallback(CoerceCurrentReading),
true //Animation prohibited
, UpdateSourceTrigger.PropertyChanged
);
注解
为 defaultValue
提供的值的类型必须与此元数据将应用到的依赖属性的原始注册中指定的类型匹配或相关。 元数据默认值类型与应用它的依赖属性类型之间的不匹配可能难以调试,因为在编译期间无法检测到不匹配。 属性系统在运行时之前不会评估属性的有效值,因此默认值类型/属性类型不匹配的结果是运行时错误。
值 UnsetValue 在属性系统中具有特殊含义,不能用作依赖属性默认值。
参数isAnimationProhibited
设置由直接基UIPropertyMetadata类声明的属性的初始值IsAnimationProhibited。
有关绑定的更新源行为的详细信息,请参阅 数据绑定概述。
参数中flags
标记为设置标志的值会将与该FrameworkPropertyMetadataOptions标志的名称匹配的属性的布尔值FrameworkPropertyMetadata设置为 true
。 只要元数据尚未应用于特定的属性系统操作,你仍然可以更改元数据中的属性值。