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

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

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

プロパティ

DependencyProperty

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

メソッド

Equals(Object)

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

(継承元 Object)
GetHashCode()

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

(継承元 Object)
GetType()

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

(継承元 Object)
MemberwiseClone()

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

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

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

ToString()

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

(継承元 Object)

適用対象

こちらもご覧ください