DependencyProperty.OverrideMetadata DependencyProperty.OverrideMetadata DependencyProperty.OverrideMetadata DependencyProperty.OverrideMetadata Method

定義

指定した型のインスタンスに存在する場合の代替メタデータをこの依存関係プロパティに提供します。この代替メタデータは、依存関係プロパティの最初の登録時に指定したメタデータの代わりに使用されます。Supplies alternate metadata for this dependency property when it is present on instances of a specified type, versus the metadata that was provided in the initial dependency property registration.

オーバーロード

OverrideMetadata(Type, PropertyMetadata) OverrideMetadata(Type, PropertyMetadata) OverrideMetadata(Type, PropertyMetadata) OverrideMetadata(Type, PropertyMetadata)

指定した型のインスタンスに存在する場合の代替メタデータをこの依存関係プロパティに提供し、基本型から継承されたときにこの依存関係プロパティに存在していたメタデータをオーバーライドします。Specifies alternate metadata for this dependency property when it is present on instances of a specified type, overriding the metadata that existed for the dependency property as it was inherited from base types.

OverrideMetadata(Type, PropertyMetadata, DependencyPropertyKey) OverrideMetadata(Type, PropertyMetadata, DependencyPropertyKey) OverrideMetadata(Type, PropertyMetadata, DependencyPropertyKey) OverrideMetadata(Type, PropertyMetadata, DependencyPropertyKey)

指定した型のインスタンスに存在する場合に代替メタデータを読み取り専用の依存関係プロパティに提供し、依存関係プロパティの最初の登録時に指定したメタデータをオーバーライドします。Supplies alternate metadata for a read-only dependency property when it is present on instances of a specified type, overriding the metadata that was provided in the initial dependency property registration. 例外の発生を防ぐために、読み取り専用の依存関係プロパティに DependencyPropertyKey を渡す必要があります。You must pass the DependencyPropertyKey for the read-only dependency property to avoid raising an exception.

OverrideMetadata(Type, PropertyMetadata) OverrideMetadata(Type, PropertyMetadata) OverrideMetadata(Type, PropertyMetadata) OverrideMetadata(Type, PropertyMetadata)

指定した型のインスタンスに存在する場合の代替メタデータをこの依存関係プロパティに提供し、基本型から継承されたときにこの依存関係プロパティに存在していたメタデータをオーバーライドします。Specifies alternate metadata for this dependency property when it is present on instances of a specified type, overriding the metadata that existed for the dependency property as it was inherited from base types.

public:
 void OverrideMetadata(Type ^ forType, System::Windows::PropertyMetadata ^ typeMetadata);
public void OverrideMetadata (Type forType, System.Windows.PropertyMetadata typeMetadata);
member this.OverrideMetadata : Type * System.Windows.PropertyMetadata -> unit
Public Sub OverrideMetadata (forType As Type, typeMetadata As PropertyMetadata)

パラメーター

forType
Type Type Type Type

この依存関係プロパティが継承され、指定した代替メタデータが適用される型。The type where this dependency property is inherited and where the provided alternate metadata will be applied.

typeMetadata
PropertyMetadata PropertyMetadata PropertyMetadata PropertyMetadata

オーバーライドする型の依存関係プロパティに適用するメタデータ。The metadata to apply to the dependency property on the overriding type.

例外

読み取り専用の依存関係プロパティでメタデータをオーバーライドしようとしました (このシグネチャを使用してこの操作を行うことはできません)。An attempt was made to override metadata on a read-only dependency property (that operation cannot be done using this signature).

指定した型に存在する場合のメタデータが、この依存関係プロパティに対して既に確立されています。Metadata was already established for the dependency property as it exists on the provided type.

注釈

プロパティ システムは、依存関係プロパティを使用する前に、依存関係プロパティ メタデータをオーバーライドする必要があります。Dependency property metadata should be overridden before the property system uses the dependency property. これは、特定のインスタンスは、依存関係プロパティを登録するクラスを使用して作成された時間に相当します。This equates to the time that specific instances are created using the class that registers the dependency property. 呼び出すOverrideMetadataとして自体を提供する型の静的コンス トラクター内でのみ実行する必要があります、forTypeまたはのようなインスタンス化で、このメソッドのパラメーター。Calls to OverrideMetadata should only be performed within the static constructors of the type that provides itself as the forType parameter of this method, or through similar instantiation. インスタンス所有者の種類の存在にメタデータを変更しようとしてください。 例外は発生しませんが、プロパティ システムに一貫性のない動作が発生します。Attempting to change metadata after instances of the owner type exist will not raise exceptions, but will result in inconsistent behaviors in the property system.

このメソッドを使用して特定の派生クラスのオーバーライドのメタデータが確立されると、この同じ派生クラスのメタデータをオーバーライドしようで例外が発生します。After metadata for a particular derived class override is established with this method, subsequent attempts to override metadata on this same derived class will raise an exception.

指定したメタデータは、基本の所有者に存在する依存関係プロパティのプロパティのメタデータに統合されます。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 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.

OverrideMetadata(Type, PropertyMetadata, DependencyPropertyKey) OverrideMetadata(Type, PropertyMetadata, DependencyPropertyKey) OverrideMetadata(Type, PropertyMetadata, DependencyPropertyKey) OverrideMetadata(Type, PropertyMetadata, DependencyPropertyKey)

指定した型のインスタンスに存在する場合に代替メタデータを読み取り専用の依存関係プロパティに提供し、依存関係プロパティの最初の登録時に指定したメタデータをオーバーライドします。Supplies alternate metadata for a read-only dependency property when it is present on instances of a specified type, overriding the metadata that was provided in the initial dependency property registration. 例外の発生を防ぐために、読み取り専用の依存関係プロパティに DependencyPropertyKey を渡す必要があります。You must pass the DependencyPropertyKey for the read-only dependency property to avoid raising an exception.

public:
 void OverrideMetadata(Type ^ forType, System::Windows::PropertyMetadata ^ typeMetadata, System::Windows::DependencyPropertyKey ^ key);
public void OverrideMetadata (Type forType, System.Windows.PropertyMetadata typeMetadata, System.Windows.DependencyPropertyKey key);
member this.OverrideMetadata : Type * System.Windows.PropertyMetadata * System.Windows.DependencyPropertyKey -> unit
Public Sub OverrideMetadata (forType As Type, typeMetadata As PropertyMetadata, key As DependencyPropertyKey)

パラメーター

forType
Type Type Type Type

この依存関係プロパティが継承され、指定した代替メタデータが適用される型。The type where this dependency property is inherited and where the provided alternate metadata will be applied.

typeMetadata
PropertyMetadata PropertyMetadata PropertyMetadata PropertyMetadata

オーバーライドする型の依存関係プロパティに適用するメタデータ。The metadata to apply to the dependency property on the overriding type.

key
DependencyPropertyKey DependencyPropertyKey DependencyPropertyKey DependencyPropertyKey

読み取り専用の依存関係プロパティのアクセス キー。The access key for a read-only dependency property.

注釈

この署名は、読み取り専用の依存関係プロパティの識別子の基になる実装を提供します (DependencyPropertyKey) メソッドです。This signature provides underlying implementation for a read-only dependency property identifier (DependencyPropertyKey) method. 読み取り/書き込み依存関係プロパティのメタデータをオーバーライドする場合は、使用OverrideMetadata(Type, PropertyMetadata)します。If overriding metadata for a read-write dependency property, use OverrideMetadata(Type, PropertyMetadata).

プロパティ システムは、依存関係プロパティを使用する前に、依存関係プロパティ メタデータをオーバーライドする必要があります。Dependency property metadata should be overridden before the property system uses the dependency property. これは、依存関係プロパティを登録するクラスの特定のオブジェクトが作成される時間に相当します。This equates to the time that specific objects are created for the class that registers the dependency property. 呼び出すOverrideMetadataとして自体を提供する型の静的コンス トラクター内でのみ実行する必要があります、forTypeまたはのようなインスタンス化で、このメソッドのパラメーター。Calls to OverrideMetadata should only be performed within the static constructors of the type that provides itself as the forType parameter of this method, or through similar instantiation. インスタンス所有者の種類の存在にメタデータを変更しようとしてください。 例外は発生しませんが、プロパティ システムに一貫性のない動作が発生します。Attempting to change metadata after instances of the owner type exist will not raise exceptions, but will result in inconsistent behaviors in the property system.

このメソッドを使用して特定の派生クラスのオーバーライドのメタデータが確立されると、この同じ派生クラスのメタデータをオーバーライドしようで例外が発生します。After metadata for a particular derived class override is established with this method, subsequent attempts to override metadata on this same derived class will raise an exception.

指定したメタデータは、基本の所有者に存在する依存関係プロパティのプロパティのメタデータに統合されます。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 specified in the new metadata. 他のユーザーなどPropertyChangedCallback、結合されます。Others, such as PropertyChangedCallback, are combined. マージ動作は、オーバーライドで使用されているプロパティのメタデータの種類によって異なります。The merge behavior depends on the property metadata type being used for the override. 詳細については、次を参照してください。依存関係プロパティ メタデータフレームワーク プロパティ メタデータします。For details, see Dependency Property Metadata and Framework Property Metadata.

適用対象