次の方法で共有


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 内)

参照

System 名前空間 | AttributeUsageAttribute