PropertyMetadata.Create 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
Create(CreateDefaultValueCallback) |
创建 PropertyMetadata 值,指定为依赖属性建立默认值的回调。 |
Create(Object) |
创建 PropertyMetadata 值,为依赖属性指定固定默认值。 |
Create(CreateDefaultValueCallback, PropertyChangedCallback) |
创建 PropertyMetadata 值,指定为依赖属性建立默认值的回调和属性更改的回调。 |
Create(Object, PropertyChangedCallback) |
创建 PropertyMetadata 值,指定依赖属性的固定默认值和属性更改的回调。 |
Create(CreateDefaultValueCallback)
创建 PropertyMetadata 值,指定为依赖属性建立默认值的回调。
[Windows.Foundation.Metadata.Overload("CreateWithFactory")]
public static PropertyMetadata Create(CreateDefaultValueCallback createDefaultValueCallback);
function create(createDefaultValueCallback)
Public Shared Function Create (createDefaultValueCallback As CreateDefaultValueCallback) As PropertyMetadata
参数
- createDefaultValueCallback
- CreateDefaultValueCallback
对提供默认属性值的回调方法的引用。
返回
新创建的依赖属性元数据。
- 属性
示例
此示例演示在自定义依赖属性方案中使用 CreateDefaultValueCallback 的伪代码。 具体来说,这会创建 PropertyMetadata 以用于 DependencyProperty.Register 调用 (不显示在) 。
PropertyMetadata metadata = PropertyMetadata.Create(
new CreateDefaultValueCallback(() =>
{
return new CustomClass() //a DependencyObject
{
CustomProperty1 = "default", //DependencyProperty of type String
CustomProperty2 = -1; //DependencyProperty of type Int32
}
})
注解
在依赖属性的默认值可能是线程绑定的情况下,请使用 CreateDefaultValueCallback 而不是固定的常量默认值。
CreateDefaultValueCallback
每当需要获取除 main UI 线程以外的线程上的属性的默认值时, 都将成为默认值的工厂。
若要为依赖属性建立 CreateDefaultValueCallback 模式,请在定义属性的元数据时使用静态 Create 方法之一,而不是使用 PropertyMetadata 构造函数。 该元数据将提交到 Register 调用。 有关详细信息,请参阅自定义的依赖属性。 与属性更改回调一样, CreateDefaultValueCallback 方法应该是注册依赖属性的类型的静态方法。 方法不一定是公开的。
另请参阅
- Create(Object)
- Create(Object, PropertyChangedCallback)
- Create(CreateDefaultValueCallback, PropertyChangedCallback)
- 自定义依赖属性
- 依赖属性概述
适用于
Create(Object)
创建 PropertyMetadata 值,为依赖属性指定固定默认值。
/// [Windows.Foundation.Metadata.DefaultOverload]
/// [Windows.Foundation.Metadata.Overload("CreateWithDefaultValue")]
static PropertyMetadata Create(IInspectable const& defaultValue);
[Windows.Foundation.Metadata.DefaultOverload]
[Windows.Foundation.Metadata.Overload("CreateWithDefaultValue")]
public static PropertyMetadata Create(object defaultValue);
function create(defaultValue)
Public Shared Function Create (defaultValue As Object) As PropertyMetadata
参数
- defaultValue
-
Object
IInspectable
要应用的依赖属性默认值。
返回
新创建的依赖属性元数据。
- 属性
另请参阅
- Create(Object, PropertyChangedCallback)
- Create(CreateDefaultValueCallback)
- Create(CreateDefaultValueCallback, PropertyChangedCallback)
适用于
Create(CreateDefaultValueCallback, PropertyChangedCallback)
创建 PropertyMetadata 值,指定为依赖属性建立默认值的回调和属性更改的回调。
[Windows.Foundation.Metadata.Overload("CreateWithFactoryAndCallback")]
public static PropertyMetadata Create(CreateDefaultValueCallback createDefaultValueCallback, PropertyChangedCallback propertyChangedCallback);
function create(createDefaultValueCallback, propertyChangedCallback)
Public Shared Function Create (createDefaultValueCallback As CreateDefaultValueCallback, propertyChangedCallback As PropertyChangedCallback) As PropertyMetadata
参数
- createDefaultValueCallback
- CreateDefaultValueCallback
对提供默认属性值的回调方法的引用。
- propertyChangedCallback
- PropertyChangedCallback
对回调方法的引用,该回调方法在依赖属性值更改时由属性系统调用。
返回
新创建的依赖属性元数据。
- 属性
另请参阅
- Create(Object)
- Create(Object, PropertyChangedCallback)
- Create(CreateDefaultValueCallback)
- 自定义依赖属性
- 依赖属性概述
适用于
Create(Object, PropertyChangedCallback)
创建 PropertyMetadata 值,指定依赖属性的固定默认值和属性更改的回调。
[Windows.Foundation.Metadata.DefaultOverload]
[Windows.Foundation.Metadata.Overload("CreateWithDefaultValueAndCallback")]
public static PropertyMetadata Create(object defaultValue, PropertyChangedCallback propertyChangedCallback);
function create(defaultValue, propertyChangedCallback)
Public Shared Function Create (defaultValue As Object, propertyChangedCallback As PropertyChangedCallback) As PropertyMetadata
参数
- defaultValue
- Object
要应用的依赖属性默认值。
- propertyChangedCallback
- PropertyChangedCallback
对回调方法的引用,该回调方法在依赖属性值更改时由属性系统调用。
返回
新创建的依赖属性元数据。
- 属性
另请参阅
- Create(Object)
- Create(CreateDefaultValueCallback)
- Create(CreateDefaultValueCallback, PropertyChangedCallback)