DependencyProperty.Register 方法

定义

使用指定的属性名称、属性类型、所有者类型和属性元数据注册依赖属性。 定义或初始化将拥有已注册依赖属性的 DependencyObject 派生类时,请使用此方法。

 static DependencyProperty Register(winrt::hstring const& name, TypeName const& propertyType, TypeName const& ownerType, PropertyMetadata const& typeMetadata);
public static DependencyProperty Register(string name, System.Type propertyType, System.Type ownerType, PropertyMetadata typeMetadata);
function register(name, propertyType, ownerType, typeMetadata)
Public Shared Function Register (name As String, propertyType As Type, ownerType As Type, typeMetadata As PropertyMetadata) As DependencyProperty

参数

name
String

winrt::hstring

要注册的依赖属性的名称。

propertyType
TypeName Type

属性的类型,作为类型引用 (System.Type for Microsoft .NET,Visual C++ 组件扩展的 TypeName 帮助程序结构 (C++/CX) ) 。

ownerType
TypeName Type

注册依赖属性的所有者类型,作为类型引用 (System.Type for Microsoft .NET,Visual C++ 组件扩展的 TypeName 帮助程序结构 (C++/CX) ) 。

typeMetadata
PropertyMetadata

属性元数据实例。 这可以包含默认值和 PropertyChangedCallback 实现引用。 传递null此参数等效于传递通过调用 PropertyMetadata.Create null 作为默认值参数创建的新 PropertyMetadata 实例。

返回

通常存储在 DependencyObject 派生类的公共静态只读字段中的依赖属性标识符。 然后,标识符由你自己的代码和任何第三方用户代码使用,以便稍后引用依赖属性,以编程方式设置其值或在代码中附加 绑定 等操作。

注解

有关如何注册自定义依赖属性的详细信息, (主题自定义 依赖属性) 示例。

注册依赖属性通常仅在应用首次启动或首次使用应用代码定义的 DependencyObject 派生类时执行。 需要在应用生存期的早期注册依赖属性,以确保应用中的其他代码和 XAML 在注册并可用之前不会尝试使用这些依赖属性。 具体注册方式和注册时间因编程语言而异。 对于 C# 或 Microsoft Visual Basic,在拥有依赖属性的类的静态类初始化期间,通常会注册依赖属性。 这样,任何初始化实例的代码或 XAML 都将调用该静态构造并注册依赖属性。 对于 (C++/CX) ) 的 Visual C++ 组件扩展,静态类初始化不是一种可用的技术,因此通常必须定义一个应用范围的帮助程序方法,该方法注册应用打算使用的所有自定义依赖项属性,作为 Application 对象初始化的一部分。 有关如何以及何时注册自定义依赖属性的示例,包括 Visual C++ 组件扩展 (C++/CX) 所需的一些特殊技术,请参阅 自定义依赖属性

适用于

另请参阅