AttributeUsageAttribute クラス


別の属性クラスの使用方法を指定します。Specifies the usage of another attribute class. このクラスは継承できません。This class cannot be inherited.

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


独自の属性クラスを定義する場合は、属性クラスに AttributeUsageAttribute を配置することで、属性クラスの使用方法を制御できます。When you are defining your own attribute class, you can control the manner in which it is used by placing an AttributeUsageAttribute on your attribute class. 指定された属性クラスは、直接的または間接的に Attributeから派生する必要があります。The indicated attribute class must derive from Attribute, either directly or indirectly.

属性クラスには、位置指定パラメーターと名前付きパラメーターがあります。Attribute classes have positional and named parameters. 属性クラスの各パブリックコンストラクターは、そのクラスの位置パラメーターの有効なシーケンスを定義します。Each public constructor for an attribute class defines a valid sequence of positional parameters for that class. 名前付きパラメーターは、属性クラスの非静的、パブリック、および読み取り/書き込みの各フィールドまたはプロパティによって定義されます。Named parameters are defined by the non-static, public, and read-write fields or properties of the attribute class.

AttributeUsageAttribute の3つのプロパティは、次のパラメーターを定義することによって設定します。The three properties of AttributeUsageAttribute are set by defining the following parameters:

この位置指定パラメーターは、指定された属性を配置できるプログラム要素を指定します。This positional parameter specifies the program elements that the indicated attribute can be placed on. 属性を配置できるすべての可能な要素のセットが、AttributeTargets 列挙に一覧表示されます。The set of all possible elements that you can place an attribute on is listed in the AttributeTargets enumeration. ビットごとの OR 演算を使用して複数の AttributeTargets 値を組み合わせて、有効なプログラム要素の目的の組み合わせを取得できます。You can combine several AttributeTargets values using a bitwise OR operation to get the desired combination of valid program elements.

この名前付きパラメーターは、指定された属性を特定のプログラム要素に対して複数回指定できるかどうかを指定します。This named parameter specifies whether the indicated attribute can be specified more than once for a given program element.

この名前付きパラメーターは、派生クラスおよびオーバーライドするメンバーによって、指定された属性を継承できるかどうかを指定します。This named parameter specifies whether the indicated attribute can be inherited by derived classes and overriding members.

属性の使用方法の詳細については、「Attribute属性」を参照してください。For more information about using attributes, see Attribute and Attributes.



AttributeUsageAttributeAttributeTargets 値、および AllowMultiple 値の指定リストを使用して、Inherited クラスの新しいインスタンスを初期化します。Initializes a new instance of the AttributeUsageAttribute class with the specified list of AttributeTargets, the AllowMultiple value, and the Inherited value.



示された属性の複数のインスタンスを 1 つのプログラム要素に対して指定できるかどうかを示すブール値を取得または設定します。Gets or sets a Boolean value indicating whether more than one instance of the indicated attribute can be specified for a single program element.


示された属性が派生クラスによって継承され、メンバーをオーバーライドするかどうかを決定する Boolean 値を取得または設定します。Gets or sets a Boolean value that determines whether the indicated attribute is inherited by derived classes and overriding members.


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

(継承元 Attribute)

制御対象とする属性を適用できるプログラム要素を識別する一連の値を取得します。Gets a set of values identifying which program elements that the indicated attribute can be applied to.



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

(継承元 Attribute)

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

(継承元 Attribute)

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

(継承元 Object)

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

(継承元 Attribute)

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

(継承元 Attribute)

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

(継承元 Object)

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

(継承元 Object)


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

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

(継承元 Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

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

(継承元 Attribute)

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

(継承元 Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

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

(継承元 Attribute)