TypeDescriptor.GetAttributes TypeDescriptor.GetAttributes TypeDescriptor.GetAttributes TypeDescriptor.GetAttributes Method

定義

コンポーネントまたは型の属性のコレクションを返します。Returns the collection of attributes for a component or a type.

オーバーロード

GetAttributes(Object) GetAttributes(Object) GetAttributes(Object) GetAttributes(Object)

指定したコンポーネントの属性のコレクションを返します。Returns the collection of attributes for the specified component.

GetAttributes(Type) GetAttributes(Type) GetAttributes(Type) GetAttributes(Type)

指定したコンポーネントの型の属性のコレクションを返します。Returns a collection of attributes for the specified type of component.

GetAttributes(Object, Boolean) GetAttributes(Object, Boolean) GetAttributes(Object, Boolean) GetAttributes(Object, Boolean)

指定したコンポーネントの属性のコレクションと、カスタムの型記述子が作成されていることを示すブール値を返します。Returns a collection of attributes for the specified component and a Boolean indicating that a custom type descriptor has been created.

GetAttributes(Object) GetAttributes(Object) GetAttributes(Object) GetAttributes(Object)

指定したコンポーネントの属性のコレクションを返します。Returns the collection of attributes for the specified component.

public:
 static System::ComponentModel::AttributeCollection ^ GetAttributes(System::Object ^ component);
public static System.ComponentModel.AttributeCollection GetAttributes (object component);
static member GetAttributes : obj -> System.ComponentModel.AttributeCollection
Public Shared Function GetAttributes (component As Object) As AttributeCollection

パラメーター

component
Object Object Object Object

属性を取得する対象のコンポーネント。The component for which you want to get attributes.

戻り値

コンポーネントの属性を格納している AttributeCollectionAn AttributeCollection containing the attributes for the component. componentnull の場合、このメソッドは空のコレクションを返します。If component is null, this method returns an empty collection.

このメソッドの例については、 Matchesメソッドを参照してください。For an example of this method, see the Matches method.

注釈

GetAttributesメソッドによって返される属性は、拡張プロバイダー (IExtenderProvider)、フィルターサービス (ITypeDescriptorFilterService)、および属性フィルターによって元のコンポーネントのソースリストから動的に変更される可能性があります。The attributes returned by the GetAttributes method may be dynamically modified from the original component's source listing by extender providers (IExtenderProvider), filter services (ITypeDescriptorFilterService), and attribute filters.

をにAttributeUsageAttribute.AllowMultiple true設定してカスタム属性を定義する場合は、 Attribute.TypeIdプロパティをオーバーライドして一意にする必要があります。When you define a custom attribute with AttributeUsageAttribute.AllowMultiple set to true, you must override the Attribute.TypeId property to make it unique. 属性のすべてのインスタンスが一意である場合Attribute.TypeIdは、をオーバーライドして、属性のオブジェクト id を返します。If all instances of your attribute are unique, override Attribute.TypeId to return the object identity of your attribute. 属性の一部のインスタンスのみが一意である場合は、からAttribute.TypeId値を返します。If only some instances of your attribute are unique, return a value from Attribute.TypeId that would return equality in those cases. たとえば、一部の属性には、一意のキーとして機能するコンストラクターパラメーターがあります。For example, some attributes have a constructor parameter that acts as a unique key. これらの属性については、 Attribute.TypeIdプロパティからコンストラクターパラメーターの値を返します。For these attributes, return the value of the constructor parameter from the Attribute.TypeId property.

注意

Attribute.TypeId既定の実装では、 AttributeUsageAttribute.AllowMultipleプロパティの値に関係なく、型 id が返されます。The default implementation of Attribute.TypeId returns the type identity regardless of the value of the AttributeUsageAttribute.AllowMultiple property. から属性のAttributeUsageAttribute.AllowMultiple複数のインスタンスを返すには、属性でプロパティをAttribute.TypeIdオーバーライドする必要があります。 AttributeCollectionIn order to return multiple instances of an AttributeUsageAttribute.AllowMultiple attribute from the AttributeCollection, your attribute must override the Attribute.TypeId property.

こちらもご覧ください

GetAttributes(Type) GetAttributes(Type) GetAttributes(Type) GetAttributes(Type)

指定したコンポーネントの型の属性のコレクションを返します。Returns a collection of attributes for the specified type of component.

public:
 static System::ComponentModel::AttributeCollection ^ GetAttributes(Type ^ componentType);
public static System.ComponentModel.AttributeCollection GetAttributes (Type componentType);
static member GetAttributes : Type -> System.ComponentModel.AttributeCollection
Public Shared Function GetAttributes (componentType As Type) As AttributeCollection

パラメーター

componentType
Type Type Type Type

対象のコンポーネントの TypeThe Type of the target component.

戻り値

コンポーネントの型の属性を格納している AttributeCollectionAn AttributeCollection with the attributes for the type of the component. コンポーネントが null の場合、このメソッドは空のコレクションを返します。If the component is null, this method returns an empty collection.

注釈

オブジェクトのインスタンスがない場合にのみ、このバージョンのこのメソッドを呼び出します。Call this version of this method only when you do not have an instance of the object.

がに設定AttributeUsageAttribute.AllowMultipleされtrueた属性では、属性コレクションによって重複するインスタンスが削除されます。For attributes with AttributeUsageAttribute.AllowMultiple set to true, the attribute collection removes duplicate instances. これらは、プロパティがAttribute.TypeId等しい値を返すインスタンスです。These are instances in which the Attribute.TypeId property returns equal values.

をにAttributeUsageAttribute.AllowMultiple true設定してカスタム属性を定義する場合は、 Attribute.TypeIdプロパティをオーバーライドして一意にする必要があります。When you define a custom attribute with AttributeUsageAttribute.AllowMultiple set to true, you must override the Attribute.TypeId property to make it unique. 属性のすべてのインスタンスが一意である場合Attribute.TypeIdは、をオーバーライドして、属性のオブジェクト id を返します。If all instances of your attribute are unique, override Attribute.TypeId to return the object identity of your attribute. 属性の一部のインスタンスのみが一意である場合は、からAttribute.TypeId値を返します。If only some instances of your attribute are unique, return a value from Attribute.TypeId that would return equality in those cases. たとえば、一部の属性には、一意のキーとして機能するコンストラクターパラメーターがあります。For example, some attributes have a constructor parameter that acts as a unique key. これらの属性については、 Attribute.TypeIdプロパティからコンストラクターパラメーターの値を返します。For these attributes, return the value of the constructor parameter from the Attribute.TypeId property.

注意

Attribute.TypeId既定の実装では、 AttributeUsageAttribute.AllowMultipleプロパティの値に関係なく、型 id が返されます。The default implementation of Attribute.TypeId returns the type identity regardless of the value of the AttributeUsageAttribute.AllowMultiple property. から属性のAttributeUsageAttribute.AllowMultiple複数のインスタンスを返すには、属性でプロパティをAttribute.TypeIdオーバーライドする必要があります。 AttributeCollectionIn order to return multiple instances of an AttributeUsageAttribute.AllowMultiple attribute from the AttributeCollection, your attribute must override the Attribute.TypeId property.

こちらもご覧ください

GetAttributes(Object, Boolean) GetAttributes(Object, Boolean) GetAttributes(Object, Boolean) GetAttributes(Object, Boolean)

指定したコンポーネントの属性のコレクションと、カスタムの型記述子が作成されていることを示すブール値を返します。Returns a collection of attributes for the specified component and a Boolean indicating that a custom type descriptor has been created.

public:
 static System::ComponentModel::AttributeCollection ^ GetAttributes(System::Object ^ component, bool noCustomTypeDesc);
public static System.ComponentModel.AttributeCollection GetAttributes (object component, bool noCustomTypeDesc);
static member GetAttributes : obj * bool -> System.ComponentModel.AttributeCollection
Public Shared Function GetAttributes (component As Object, noCustomTypeDesc As Boolean) As AttributeCollection

パラメーター

component
Object Object Object Object

属性を取得する対象のコンポーネント。The component for which you want to get attributes.

noCustomTypeDesc
Boolean Boolean Boolean Boolean

componentICustomTypeDescriptor 型の場合に、カスタムの型記述子から属性のベースライン セットを使用する場合は true。それ以外の場合は falsetrue to use a baseline set of attributes from the custom type descriptor if component is of type ICustomTypeDescriptor; otherwise, false.

戻り値

コンポーネントの属性を格納している AttributeCollectionAn AttributeCollection with the attributes for the component. コンポーネントが null の場合、このメソッドは空のコレクションを返します。If the component is null, this method returns an empty collection.

注釈

GetAttributesメソッドによって返される属性は、拡張プロバイダー (IExtenderProvider)、フィルターサービス (ITypeDescriptorFilterService)、および属性フィルターによる元のコンポーネントソースリストから動的に変更できます。The attributes returned by the GetAttributes method may be dynamically modified from the original components source listing by extender providers (IExtenderProvider), filter services (ITypeDescriptorFilterService), and attribute filters.

をにAttributeUsageAttribute.AllowMultiple true設定してカスタム属性を定義する場合は、 Attribute.TypeIdプロパティをオーバーライドして一意にする必要があります。When you define a custom attribute with AttributeUsageAttribute.AllowMultiple set to true, you must override the Attribute.TypeId property to make it unique. 属性のすべてのインスタンスが一意である場合Attribute.TypeIdは、をオーバーライドして、属性のオブジェクト id を返します。If all instances of your attribute are unique, override Attribute.TypeId to return the object identity of your attribute. 属性の一部のインスタンスのみが一意である場合は、からAttribute.TypeId値を返します。If only some instances of your attribute are unique, return a value from Attribute.TypeId that would return equality in those cases. たとえば、一部の属性には、一意のキーとして機能するコンストラクターパラメーターがあります。For example, some attributes have a constructor parameter that acts as a unique key. これらの属性については、 Attribute.TypeIdプロパティからコンストラクターパラメーターの値を返します。For these attributes, return the value of the constructor parameter from the Attribute.TypeId property.

注意

Attribute.TypeId既定の実装では、 AttributeUsageAttribute.AllowMultipleプロパティの値に関係なく、型 id が返されます。The default implementation of Attribute.TypeId returns the type identity regardless of the value of the AttributeUsageAttribute.AllowMultiple property. から属性のAttributeUsageAttribute.AllowMultiple複数のインスタンスを返すには、属性でプロパティをAttribute.TypeIdオーバーライドする必要があります。 AttributeCollectionIn order to return multiple instances of an AttributeUsageAttribute.AllowMultiple attribute from the AttributeCollection, your attribute must override the Attribute.TypeId property.

こちらもご覧ください

適用対象