DependencyProperty.AddOwner 메서드

정의

형식에 이미 등록된 종속성 속성의 소유자로 다른 형식을 추가합니다.Adds another type as an owner of a dependency property that has already been registered to a type.

오버로드

AddOwner(Type)

이미 등록된 종속성 속성의 소유자로 다른 형식을 추가합니다.Adds another type as an owner of a dependency property that has already been registered.

AddOwner(Type, PropertyMetadata)

이미 등록된 종속성 속성의 소유자로 다른 형식을 추가하며, 제공된 소유자 형식에 존재하는 종속성 속성에 대한 종속성 속성 메타데이터를 제공합니다.Adds another type as an owner of a dependency property that has already been registered, providing dependency property metadata for the dependency property as it will exist on the provided owner type.

AddOwner(Type)

이미 등록된 종속성 속성의 소유자로 다른 형식을 추가합니다.Adds another type as an owner of a dependency property that has already been registered.

public:
 System::Windows::DependencyProperty ^ AddOwner(Type ^ ownerType);
public System.Windows.DependencyProperty AddOwner (Type ownerType);
member this.AddOwner : Type -> System.Windows.DependencyProperty
Public Function AddOwner (ownerType As Type) As DependencyProperty

매개 변수

ownerType
Type

이 종속성 속성의 소유자로 추가할 형식입니다.The type to add as an owner of this dependency property.

반환

DependencyProperty

종속성 속성을 식별하는 원본 DependencyProperty 식별자에 대한 참조입니다.A reference to the original DependencyProperty identifier that identifies the dependency property. 이 식별자는 클래스를 public static readonly 필드로 추가하여 공개해야 합니다.This identifier should be exposed by the adding class as a public static readonly field.

설명

이 메서드를 사용 하면 해당 특정 종속성 속성을 처음에 등록 하지 않은 형식에 종속성 속성을 인식 하는 속성 시스템입니다.This method enables the property system to recognize a dependency property on a type that did not register that particular dependency property initially.

일반적으로 AddOwner 이미 관리 되는 클래스 상속을 통해 종속성 속성을 노출 하지 않는 클래스에 종속성 속성을 추가 하는 데 사용 됩니다 (클래스 상속으로 인해 파생된 클래스에서 상속 하는 래퍼 속성 이므로 제공 된 종속성 속성에 대 한 일반 멤버 테이블 액세스 이미).Typically, AddOwner is used to add dependency properties to classes that do not already expose that dependency property through managed class inheritance (class inheritance would cause the wrapper properties to be inherited by the derived class, and thus would provide general members-table access to the dependency property already). AddOwner 처음에 종속성 속성 등록 하지 않은 형식에 종속성 속성을 인식 하는 속성 시스템을 사용 하도록 설정 합니다.AddOwner enables the property system to recognize a dependency property on a type that did not register that dependency property initially.

메타 데이터를 지정 하는 데이 시그니처를 허용 하지 않습니다.This signature does not allow for specifying metadata. 이 메서드를 사용 하면 새 메타 데이터를 자동으로 생성 됩니다 DependencyProperty 와 소유자 형식입니다.When you use this method, the metadata is automatically generated for the new DependencyProperty and its owner type. 자동으로 생성 된 메타 데이터에는이 속성이 정의 된 기본 형식의 모든 병합된 메타 데이터의 결과입니다.The auto-generated metadata is the result of the merged metadata from all of the base types that have this property defined. 병합된 메타 데이터를 사용할 수 있는 속성에 대 한 기본 메타 데이터 사용 됩니다.If no merged metadata is available, then the default metadata for the property is used. 속성을 사용 하 여 등록 된 경우는 RegisterAttached 메서드를 기본 메타 데이터는 때 생성 되는 메타 데이터와 동일한 RegisterAttached 호출 되었습니다.If the property is registered by using the RegisterAttached method, then the default metadata is the same as the metadata that is created when RegisterAttached was called. 이 고, 그렇지는 PropertyMetadata 개체를 만든를 DefaultValue 속성 형식의 기본값과 다른 모든 속성을 설정 하는 속성을 PropertyMetadata 로 설정 된 null합니다.Otherwise, the PropertyMetadata object is created with the DefaultValue property set to the property type's default and all other properties of the PropertyMetadata is set to null. 사용 된 AddOwner(Type, PropertyMetadata) 서명이 제공된 된 형식에 추가 된 종속성 속성의 버전에 대 한 메타 데이터를 제공 하려는 경우.Use the AddOwner(Type, PropertyMetadata) signature if you want to provide metadata for the version of the dependency property as added to the provided type.

이 메서드의 반환 값을 선언 하 여 종속성 속성 식별자를 저장 하 여 종속성 속성을 노출 일반적으로 사용 됩니다.The return value of this method is typically used to declare and expose the dependency property by storing a dependency property identifier. 이 식별자는 종속성 속성에 대해 속성 시스템 Api를 호출 하려는 경우 (특히 소유자 추가 클래스에 존재 하는 경우) 종속성 속성에 대 한 액세스를 제공 합니다.The identifier provides access to the dependency property if you want to call property system APIs against the dependency property, particularly as it exists on the adding owner class. 원래 소유자와 추가 된 소유자에 대 한 속성 이름이 비슷한 기능을 나타내는 데 사용할 해야 합니다.The same property name for both original owner and added owner should be used to indicate the similar functionality. 사용 해야 합니다 DependencyProperty 의 값을 반환 합니다 AddOwner 종속성 속성 식별자를 정의 하 고 선언도 메서드 CLRCLR 속성 래퍼를 사용 하 여 형식에 추가 되는 종속성 속성에 대 한 AddOwner.You should use the DependencyProperty return value of the AddOwner method to define the dependency property identifier, and also to declare CLRCLR property wrappers, for dependency properties that are added to types using AddOwner.

합니다 AddOwner 내에 선언 된 종속성 속성을 만들 때 위에서 권장 하는 방법론을 사용 하는 WPFWPF합니다.The AddOwner methodology recommended above is used when creating the dependency properties that are declared within WPFWPF. 예를 들어, 둘 다 Border 하 고 Control 정의 BorderBrush 비슷한 기능을 가진 종속성 속성입니다.For instance, both Border and Control define a BorderBrush dependency property, which have similar functionality. Control 정의 해당 BorderBrush 속성을 호출 하 여 속성 시스템 AddOwner 원래 소유자에 따라 Border 및 등록 된 BorderBrushProperty 종속성 속성 식별자입니다.Control defines its BorderBrush property to the property system by calling AddOwner based on the original owner Border and its registered BorderBrushProperty dependency property identifer. AddOwner 반환 하는 새 정적 설정 값을 사용 합니다 DependencyProperty 필드 (BorderBrushProperty)에서 추가 된 소유자, 해당 속성 및 BorderBrush 속성 래퍼를 선언 합니다.The AddOwner return value is then used to establish a new static DependencyProperty field (BorderBrushProperty) for that property on the added owner, and a BorderBrush property wrapper is also declared.

적용 대상

AddOwner(Type, PropertyMetadata)

이미 등록된 종속성 속성의 소유자로 다른 형식을 추가하며, 제공된 소유자 형식에 존재하는 종속성 속성에 대한 종속성 속성 메타데이터를 제공합니다.Adds another type as an owner of a dependency property that has already been registered, providing dependency property metadata for the dependency property as it will exist on the provided owner type.

public:
 System::Windows::DependencyProperty ^ AddOwner(Type ^ ownerType, System::Windows::PropertyMetadata ^ typeMetadata);
public System.Windows.DependencyProperty AddOwner (Type ownerType, System.Windows.PropertyMetadata typeMetadata);
member this.AddOwner : Type * System.Windows.PropertyMetadata -> System.Windows.DependencyProperty
Public Function AddOwner (ownerType As Type, typeMetadata As PropertyMetadata) As DependencyProperty

매개 변수

ownerType
Type

이 종속성 속성의 소유자로 추가할 형식입니다.The type to add as owner of this dependency property.

typeMetadata
PropertyMetadata

제공된 형식에 존재하는 종속성 속성을 정규화하는 메타데이터입니다.The metadata that qualifies the dependency property as it exists on the provided type.

반환

DependencyProperty

종속성 속성을 식별하는 원본 DependencyProperty 식별자에 대한 참조입니다.A reference to the original DependencyProperty identifier that identifies the dependency property. 이 식별자는 클래스를 public static readonly 필드로 추가하여 공개해야 합니다.This identifier should be exposed by the adding class as a public static readonly field.

설명

이 메서드를 사용 하면 해당 특정 종속성 속성을 처음에 등록 하지 않은 형식에 종속성 속성을 인식 하는 속성 시스템입니다.This method enables the property system to recognize a dependency property on a type that did not register that particular dependency property initially.

이 메서드의 반환 값을 추가 하는 소유자 클래스에 있으므로 특히를 선언 하 여 종속성 속성을 노출 됩니다.The return value of this method is used to declare and expose the dependency property, particularly as it exists on the adding owner class. 일반적으로 원래 소유자와 추가 된 소유자에 대 한 속성 이름이 비슷한 기능을 나타내는 데 사용할 해야 합니다.Generally, the same property name for both original owner and added owner should be used to indicate the similar functionality. 도 새 식별자를 노출 하는 것이 좋습니다 CLRCLR 사용 하 여 형식에 추가 되는 종속성 속성에 대 한 속성 래퍼 AddOwner합니다.It is good practice to expose the identifiers, as well as new CLRCLR property wrappers, for dependency properties that are added to types using AddOwner.

AddOwner위에서 권장 된 방법론은 내에서 선언 된 api를 만들 때 사용 됩니다 WPFWPF .The AddOwner methodology recommended above is used when creating APIs declared within WPFWPF. 예를 들어, 둘 다 Border 하 고 Control 정의 BorderBrush 비슷한 기능을 가진 종속성 속성입니다.For instance, both Border and Control define a BorderBrush dependency property, which have similar functionality. Control 정의 해당 BorderBrush 속성을 호출 하 여 속성 시스템 AddOwner 의 원래 소유자 Border 및 등록 된 BorderBrushProperty 종속성 속성 식별자입니다.Control defines its BorderBrush property to the property system by calling AddOwner on original owner Border and its registered BorderBrushProperty dependency property identifer. 합니다 AddOwner 반환 값은 다음 정적 설정 하는 데 사용 됩니다 DependencyProperty 필드 (BorderBrushProperty)에 추가 된 소유자, 해당 속성에 대 한 및 BorderBrush 속성 래퍼를 선언 합니다.The AddOwner return value is then used to establish a static DependencyProperty field (BorderBrushProperty) for that property on the added owner, and a BorderBrush property wrapper is also declared.

추가 된 소유자의 종속성 속성 식별자에 사용할 작업 같은 GetValue합니다.The added owner's dependency property identifier should be used for operations such as GetValue. 그러나 형식 또는 다른 메타 데이터를 사용 하 여 소유자는 여전히 추가 된 클래스의 인스턴스를 포함 하는 type 별 작업을 반환할 경우에도 예상된 결과 원래 (없습니다 추가 된 소유자의)에 지정 된 종속성 속성 식별자 와 같은 메서드를 호출 GetValue 또는 GetMetadata합니다.However, type-specific operations involving either types or instances of the class that was added as owner with different metadata will still return the expected results even if the original (not the added owner's) dependency property identifier is specified in calls to methods such as GetValue or GetMetadata. 추가 된 소유자에 대 한 메타 데이터에서 지속 되는 AddOwner 추가 소유자 클래스 식별자 필드에서 단독으로 참조 하지 않아도 자신을 호출 합니다.The metadata for the added owner is perpetuated by the AddOwner call itself, not necessarily referenced exclusively by the adding owner class identifier field. 그럼에도 불구 하 고 것에 새 식별자를 노출 하는 것이 좋습니다 CLRCLR 사용 하 여 형식에 추가 되는 종속성 속성에 대 한 속성 래퍼 AddOwner간의 차이 만들기 위해 실패 때문에 CLRCLRXAMLXAML 속성의 표현입니다.Nevertheless, it is good practice to expose the identifier, as well as new CLRCLR property wrappers, for dependency properties that are added to types using AddOwner, because failing to do so creates disparity between the CLRCLR and XAMLXAML representations of your properties.

제공 된 메타 데이터는 기본 소유자에 있는 종속성 속성의 속성 메타 데이터를 사용 하 여 병합 됩니다.The supplied metadata is merged with the property metadata for the dependency property as it exists on the base owner. 원래 기본 메타 데이터에 지정 된 모든 특성이 유지 됩니다.Any characteristics that were specified in the original base metadata will persist. 새 메타 데이터에 특별히 변경 된 특성만 기본 메타 데이터의 특징을 재정의 합니다.Only those characteristics that were specifically changed in the new metadata will override the characteristics of the base metadata. 일부 특성을 같은 DefaultValue, 새 메타 데이터에 지정 된 경우에 대체 됩니다.Some characteristics, such as DefaultValue, are replaced if they are specified in the new metadata. 다른 사용자와 같은 PropertyChangedCallback에 결합 됩니다.Others, such as PropertyChangedCallback, are combined. 병합 동작 하므로 여기에 설명 된 동작은 사용 되는 기존 속성 메타 데이터 클래스에 대 한 재정의 사용 중인 속성 메타 데이터 형식에 따라 다르며 WPFWPF 종속성 속성입니다.Ultimately, the merge behavior depends on the property metadata type being used for the override, so the behavior described here is for the existing property metadata classes used by WPFWPF dependency properties. 자세한 내용은 참조 하세요 종속성 속성 메타 데이터 하 고 프레임 워크 속성 메타 데이터입니다.For details, see Dependency Property Metadata and Framework Property Metadata.

적용 대상