DependencyPropertyKey クラス

定義

読み取り専用の依存関係プロパティへの制限された書き込みアクセスに必要な依存関係プロパティ識別子を提供します。

public ref class DependencyPropertyKey sealed
public sealed class DependencyPropertyKey
type DependencyPropertyKey = class
Public NotInheritable Class DependencyPropertyKey
継承
DependencyPropertyKey

次の例では、読み取り専用の依存関係プロパティを登録し、他のクラス メンバーの 2 つの目的にもキーを使用します。get "wrapper" を実装し、他のプロパティ値の計算に基づいて値を設定する保護された決定操作の識別子として使用します。

internal static readonly DependencyPropertyKey AquariumSizeKey = DependencyProperty.RegisterReadOnly(
  "AquariumSize",
  typeof(double),
  typeof(Aquarium),
  new PropertyMetadata(double.NaN)
);
public static readonly DependencyProperty AquariumSizeProperty =
  AquariumSizeKey.DependencyProperty;
public double AquariumSize
{
  get { return (double)GetValue(AquariumSizeProperty); }
}
Friend Shared ReadOnly AquariumSizeKey As DependencyPropertyKey = DependencyProperty.RegisterReadOnly("AquariumSize", GetType(Double), GetType(Aquarium), New PropertyMetadata(Double.NaN))
Public Shared ReadOnly AquariumSizeProperty As DependencyProperty = AquariumSizeKey.DependencyProperty
Public ReadOnly Property AquariumSize() As Double
    Get
        Return CDbl(GetValue(AquariumSizeProperty))
    End Get
End Property

注釈

DependencyPropertyKey インスタンスは、メソッド RegisterReadOnly を使用して依存関係プロパティ登録呼び出しの戻り値として取得されます RegisterAttachedReadOnly

依存関係プロパティを登録する型は、クラス ロジックの DependencyPropertyKey 一部としてプロパティの値を調整する SetValue in 呼び出し ClearValue を使用できます。 キーのアクセス レベルで許可されている場合、関連するクラスはキーと依存関係プロパティも使用できます。 たとえば、キーを内部として宣言できます。また、同じアセンブリ内の他の型でも、その依存関係プロパティを設定できます。

キーを公開するとプロパティが DependencyPropertyKey 設定可能になるため、読み取り専用の依存関係プロパティの登録によって返されるプロパティを公開しないでください。したがって、読み取り専用の依存関係プロパティとして登録するポイントを無効にします。 また、キーを公開すると、使用可能な依存関係プロパティの動作と共通言語ランタイム (CLR) プロパティ ラッパーの実装との間で不一致が発生します。これは、クラスの設計が不適切です。

キー自体を公開する代わりに、クラスで a のpublic static readonlyDependencyProperty値をDependencyPropertyKey公開DependencyPropertyする必要があります。 これにより、プロパティは、ローカルに設定された値の列挙など、特定のプロパティ システム操作に対して有効な依存関係プロパティ識別子を返すことができます。 ただし、このように取得された識別子には、多くのプロパティ システム操作の DependencyProperty 完全な機能がありません。

プロパティ

DependencyProperty

この特殊な読み取り専用依存関係プロパティ識別子に関連付けられている依存関係プロパティ識別子を取得します。

メソッド

Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
GetHashCode()

既定のハッシュ関数として機能します。

(継承元 Object)
GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
OverrideMetadata(Type, PropertyMetadata)

この依存関係プロパティ識別子によって表される読み取り専用の依存関係プロパティのメタデータをオーバーライドします。

ToString()

現在のオブジェクトを表す文字列を返します。

(継承元 Object)

適用対象

こちらもご覧ください