DictionaryKeyPropertyAttribute DictionaryKeyPropertyAttribute DictionaryKeyPropertyAttribute DictionaryKeyPropertyAttribute Class


暗黙のキー値を提供する関連付けられているクラスのプロパティを指定します。Specifies a property of the associated class that provides the implicit key value. x:Key コレクションの項目では、XAML で定義される明示的な IDictionary 属性ではなく、暗黙のキーが使用されます。Implicit keys are used for keys rather than explicit x:Key attributes defined in XAML for an item in IDictionary collections.

public ref class DictionaryKeyPropertyAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=false, Inherited=true)]
public sealed class DictionaryKeyPropertyAttribute : Attribute
type DictionaryKeyPropertyAttribute = class
    inherit Attribute
Public NotInheritable Class DictionaryKeyPropertyAttribute
Inherits Attribute


IDictionaryディクショナリ内の項目 ( WPFWPF ResourceDictionaryなど) には、キーが必要です。Items in an IDictionary dictionary (such as the WPFWPF ResourceDictionary) require a key. Xaml では、キーは通常、 x:Key IDictionary内の各項目の xaml マークアップの属性によって指定されます。In XAML, the key is typically specified by x:Key attribute in the XAML markup for each item in the IDictionary. DictionaryKeyPropertyAttribute 、暗黙的なキーを使用するクラスに適用されます。この場合、 IDictionary包含に使用するキーは、クラス内の別のプロパティ値から取得されます。The DictionaryKeyPropertyAttribute is applied to classes that work with an implicit key, where the key to use for IDictionary inclusion comes from a different property value in the class. を適用DictionaryKeyPropertyAttributeするクラスのインスタンスは、明示的なIDictionaryキーを持たないに含めることができます。 IDictionaryこれは、によって参照されるプロパティの値が、そのディクショナリ実装のキーとして有効である場合に限ります。Instances of the class applying the DictionaryKeyPropertyAttribute can be included in an IDictionary without an explicit key so long as the property referenced by IDictionary has a value that is valid as a key in that dictionary implementation.

以前のバージョンの .NET Framework では、このクラスは WPF 固有のアセンブリ WindowsBase に存在していました。In previous versions of the .NET Framework, this class existed in the WPF-specific assembly WindowsBase. .NET Framework 4.NET Framework 4DictionaryKeyPropertyAttribute 、は、システムの .xaml アセンブリにあります。In .NET Framework 4.NET Framework 4, DictionaryKeyPropertyAttribute is in the System.Xaml assembly. 詳細については、「 Types Migrated from WPF to System.Xaml」を参照してください。For more information, see Types Migrated from WPF to System.Xaml.

WPF の使用上の注意WPF Usage Notes

次の一覧では、この属性が適用される WPF Api の例を参照しています。The following list references examples of WPF APIs where this attribute is applied:

の WPF リソースディクショナリのDictionaryKeyPropertyAttribute影響の詳細については、「 XAML リソース」を参照してください。For more information about the WPF resource dictionary implications of DictionaryKeyPropertyAttribute, see XAML Resources.


DictionaryKeyPropertyAttribute(String) DictionaryKeyPropertyAttribute(String) DictionaryKeyPropertyAttribute(String) DictionaryKeyPropertyAttribute(String)

DictionaryKeyPropertyAttribute クラスの新しいインスタンスを初期化します。Initializes a new instance of the DictionaryKeyPropertyAttribute class.


Name Name Name Name

暗黙のキー値が用意されたプロパティの名前を取得します。Gets the name of the property that provides the implicit key value.

TypeId TypeId TypeId TypeId

派生クラスで実装されると、この Attribute の一意の識別子を取得します。When implemented in a derived class, gets a unique identifier for this Attribute.

(Inherited from Attribute)


Equals(Object) Equals(Object) Equals(Object) Equals(Object)

このインスタンスが、指定されたオブジェクトと等価であるかどうかを示す値を返します。Returns a value that indicates whether this instance is equal to a specified object.

(Inherited from Attribute)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

このインスタンスのハッシュ コードを返します。Returns the hash code for this instance.

(Inherited from Attribute)
GetType() GetType() GetType() GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(Inherited from Object)
IsDefaultAttribute() IsDefaultAttribute() IsDefaultAttribute() IsDefaultAttribute()

派生クラスでオーバーライドされるとき、このインスタンスの値が派生クラスの既定値であるかどうかを示します。When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class.

(Inherited from Attribute)
Match(Object) Match(Object) Match(Object) Match(Object)

派生クラス内でオーバーライドされたときに、指定したオブジェクトとこのインスタンスが等しいかどうかを示す値を返します。When overridden in a derived class, returns a value that indicates whether this instance equals a specified object.

(Inherited from Attribute)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

現在のオブジェクトを表す文字列を返します。Returns a string that represents the current object.

(Inherited from Object)


_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

一連の名前を対応する一連のディスパッチ識別子に割り当てます。Maps a set of names to a corresponding set of dispatch identifiers.

(Inherited from Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

オブジェクトの型情報を取得します。この情報はインターフェイスの型情報の取得に使用できます。Retrieves the type information for an object, which can be used to get the type information for an interface.

(Inherited from Attribute)
_Attribute.GetTypeInfoCount(UInt32) _Attribute.GetTypeInfoCount(UInt32) _Attribute.GetTypeInfoCount(UInt32) _Attribute.GetTypeInfoCount(UInt32)

オブジェクトが提供する型情報インターフェイスの数 (0 または 1) を取得します。Retrieves the number of type information interfaces that an object provides (either 0 or 1).

(Inherited from Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

オブジェクトによって公開されたプロパティおよびメソッドへのアクセスを提供します。Provides access to properties and methods exposed by an object.

(Inherited from Attribute)