ConstructorArgumentAttribute ConstructorArgumentAttribute ConstructorArgumentAttribute ConstructorArgumentAttribute Class


既定以外のコンストラクター構文を使用してオブジェクトを初期化することが可能で、かつ、指定した名前のプロパティが構造情報を提供することを指定します。Specifies that an object can be initialized by using a non-default constructor syntax, and that a property of the specified name supplies construction information. この情報は主に XAML シリアル化用です。This information is primarily for XAML serialization.

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


この属性は、関連付けられているプロパティがコンス トラクターのパラメーターで初期化し、コンス トラクターを使用して、インスタンスを作成する場合は、XAML のシリアル化の無視するかを指定します。This attribute specifies that the associated property can be initialized by a constructor parameter and should be ignored for XAML serialization if the constructor is used to construct the instance. これによりより適切にラウンド トリップ表現が既定のコンス トラクターのインスタンス化と、特定の属性ではなく、パラメーター化されたコンス トラクター構文を提供します。This provides better round trip representations for parameterized constructor syntax rather than default constructor instantiation plus specific attributes.

維持マークアップ拡張機能の使用および保持して再構築に依存せず、フレームワークがサポート可能性のあるProvideValueシリアル化のためのオブジェクト ツリーに出力します。A framework can potentially support preserving markup extension usages and reconstituting them rather than relying on ProvideValue output in the object tree for serialization. ここで、ConstructorArgumentAttribute情報は、一般的なマークアップ拡張機能の使用の正確な表現を生成するためのシリアル化中に役立ちます。In this case, the ConstructorArgumentAttribute information is useful during serialization for producing an accurate representation of the typical markup extension usage. マークアップ拡張機能について詳しくは、「 XAML のマークアップ拡張機能の概要」をご覧ください。For more information about markup extensions, see Markup Extensions for XAML Overview.

有効にするには、ConstructorArgumentAttribute属性、型のパブリック既定以外のコンス トラクターは、1 つのパラメーターをサポートする必要があります。In order to be valid for a ConstructorArgumentAttribute attribution, a type's public non-default constructor must support exactly one parameter. パラメーターの名前は、読み取り/書き込みプロパティに対応する必要があります。The name of the parameter must correspond to a read/write property. プロパティをシリアル化可能それ以外の場合でする必要があります。The property must be otherwise serializable. コンス トラクターのパラメーターの名前とプロパティ間の通信を作成するのにには、この属性を使用します。You use this attribute to create the correspondence between the name of the parameter in the constructor, and the property. 具体的には、接続の読み取り/書き込みプロパティのプロパティ レベルの定義にこの属性を適用します。Specifically, you apply this attribute to the property-level definition of the connecting read/write property.

コンシューマーConstructorArgumentAttribute場合にスローする可能性が場所ArgumentName型のバッキングの場合にも解決しない、適切な構築引数とアリティを持たない型に適用された場合またはします。Consumers of ConstructorArgumentAttribute may throw in cases where ArgumentName does not resolve to type backing, or when applied to a type that does not have the appropriate construction arguments and arity.

.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 4ConstructorArgumentAttributeは System.Xaml アセンブリにします。In .NET Framework 4.NET Framework 4, ConstructorArgumentAttribute 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 の詳細については、次を参照してください。マークアップ拡張機能と WPF XAMLします。For more information about markup extensions and WPF, see Markup Extensions and WPF XAML.


ConstructorArgumentAttribute(String) ConstructorArgumentAttribute(String) ConstructorArgumentAttribute(String) ConstructorArgumentAttribute(String)

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


ArgumentName ArgumentName ArgumentName ArgumentName

関連するプロパティを初期化するコンストラクターの 名前パラメーターを取得します。Gets the name parameter of the constructor that will initialize the associated property.

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)