AttributeTargets 列挙体
属性を適用できるアプリケーション要素を指定します。
この列挙体には、メンバ値をビットごとに演算するための FlagsAttribute 属性が含まれています。
<Flags>
<Serializable>
Public Enum AttributeTargets
[C#]
[Flags]
[Serializable]
public enum AttributeTargets
[C++]
[Flags]
[Serializable]
__value public enum AttributeTargets
[JScript]
public
Flags
Serializable
enum AttributeTargets
解説
AttributeTargets は、属性を適用できる要素の種類を指定するために AttributeUsageAttribute のパラメータとして使用されます。
AttributeTargets 列挙値にビットごとの OR 演算を組み合わせて、属性の適切な組み合わせを取得できます。
メンバ
メンバ名 | 説明 | 値 |
---|---|---|
All
.NET Compact Framework でもサポート。 |
任意のアプリケーション要素に属性を適用できます。 | 16383 |
Assembly
.NET Compact Framework でもサポート。 |
アセンブリに属性を適用できます。 | 1 |
Class
.NET Compact Framework でもサポート。 |
クラスに属性を適用できます。 | 4 |
Constructor
.NET Compact Framework でもサポート。 |
コンストラクタに属性を適用できます。 | 32 |
Delegate
.NET Compact Framework でもサポート。 |
デリゲートに属性を適用できます。 | 4096 |
Enum
.NET Compact Framework でもサポート。 |
列挙体に属性を適用できます。 | 16 |
Event
.NET Compact Framework でもサポート。 |
イベントに属性を適用できます。 | 512 |
Field
.NET Compact Framework でもサポート。 |
フィールドに属性を適用できます。 | 256 |
Interface
.NET Compact Framework でもサポート。 |
インターフェイスに属性を適用できます。 | 1024 |
Method
.NET Compact Framework でもサポート。 |
メソッドに属性を適用できます。 | 64 |
Module
.NET Compact Framework でもサポート。 |
モジュールに属性を適用できます。
メモ Module は、Visual Basic 標準モジュールではなくポータブル実行可能 (PE) ファイル (.dll または .exe) を参照します。 |
2 |
Parameter
.NET Compact Framework でもサポート。 |
パラメータに属性を適用できます。 | 2048 |
Property
.NET Compact Framework でもサポート。 |
プロパティに属性を適用できます。 | 128 |
ReturnValue
.NET Compact Framework でもサポート。 |
戻り値に属性を適用できます。 | 8192 |
Struct
.NET Compact Framework でもサポート。 |
構造体、つまり、値型に属性を適用できます。 | 8 |
使用例
AttributeTargets 列挙体のアプリケーションについては、次のコード例を参照してください。
using System;
namespace AttTargsCS {
// This attribute is only valid on a class.
[AttributeUsage(AttributeTargets.Class)]
public class ClassTargetAttribute : Attribute {
}
// This attribute is only valid on a method.
[AttributeUsage(AttributeTargets.Method)]
public class MethodTargetAttribute : Attribute {
}
// This attribute is only valid on a constructor.
[AttributeUsage(AttributeTargets.Constructor)]
public class ConstructorTargetAttribute : Attribute {
}
// This attribute is only valid on a field.
[AttributeUsage(AttributeTargets.Field)]
public class FieldTargetAttribute : Attribute {
}
// This attribute is valid on a class or a method.
[AttributeUsage(AttributeTargets.Class|AttributeTargets.Method)]
public class ClassMethodTargetAttribute : Attribute {
}
// This attribute is valid on any target.
[AttributeUsage(AttributeTargets.All)]
public class AllTargetsAttribute : Attribute {
}
[ClassTarget]
[ClassMethodTarget]
[AllTargets]
public class TestClassAttribute {
[ConstructorTarget]
[AllTargets]
TestClassAttribute() {
}
[MethodTarget]
[ClassMethodTarget]
[AllTargets]
public void Method1() {
}
[FieldTarget]
[AllTargets]
public int myInt;
static void Main(string[] args) {
}
}
}
[C++]
#using <mscorlib.dll>
using namespace System;
namespace AttTargsCS {
// This attribute is only valid on a class.
[AttributeUsage(AttributeTargets::Class)]
public __gc class ClassTargetAttribute : public Attribute {
};
// This attribute is only valid on a method.
[AttributeUsage(AttributeTargets::Method)]
public __gc class MethodTargetAttribute : public Attribute {
};
// This attribute is only valid on a constructor.
[AttributeUsage(AttributeTargets::Constructor)]
public __gc class ConstructorTargetAttribute : public Attribute {
};
// This attribute is only valid on a field.
[AttributeUsage(AttributeTargets::Field)]
public __gc class FieldTargetAttribute : public Attribute {
};
// This attribute is valid on a class or a method.
[AttributeUsage(AttributeTargets::Class|AttributeTargets::Method)]
public __gc class ClassMethodTargetAttribute : public Attribute {
};
// This attribute is valid on any target.
[AttributeUsage(AttributeTargets::All)]
public __gc class AllTargetsAttribute : public Attribute {
};
[ClassTarget]
[ClassMethodTarget]
[AllTargets]
public __gc class TestClassAttribute {
[ConstructorTarget]
[AllTargets]
TestClassAttribute() {
}
public:
[MethodTarget]
[ClassMethodTarget]
[AllTargets]
void Method1() {
}
[FieldTarget]
[AllTargets]
int myInt;
static void Main() {
}
};
}
[JScript]
import System;
package AttTargsJS {
// This attribute is only valid on a class.
AttributeUsage(AttributeTargets.Class)
public class ClassTargetAttribute extends Attribute {
}
// This attribute is only valid on a method.
AttributeUsage(AttributeTargets.Method)
public class MethodTargetAttribute extends Attribute {
}
// This attribute is only valid on a constructor.
AttributeUsage(AttributeTargets.Constructor)
public class ConstructorTargetAttribute extends Attribute {
}
// This attribute is only valid on a field.
AttributeUsage(AttributeTargets.Field)
public class FieldTargetAttribute extends Attribute {
}
// This attribute is valid on a class or a method.
AttributeUsage(AttributeTargets.Class|AttributeTargets.Method)
public class ClassMethodTargetAttribute extends Attribute {
}
// This attribute is valid on any target.
AttributeUsage(AttributeTargets.All)
public class AllTargetsAttribute extends Attribute {
}
ClassTargetAttribute
ClassMethodTargetAttribute
AllTargetsAttribute
public class TestClassAttribute {
ConstructorTargetAttribute
AllTargetsAttribute
function TestClassAttribute() {
}
MethodTargetAttribute
ClassMethodTargetAttribute
AllTargetsAttribute
public function Method1() {
}
FieldTargetAttribute
AllTargetsAttribute
public var myInt : int;
static function Main(args : String[]) {
}
}
}
[Visual Basic] Visual Basic のサンプルはありません。C#、C++、および JScript のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
名前空間: System
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET
アセンブリ: Mscorlib (Mscorlib.dll 内)