TypeDescriptor.GetAttributes Método

Definición

Devuelve la colección de atributos para un componente o un tipo.

Sobrecargas

GetAttributes(Object)

Devuelve la colección de atributos para el componente especificado.

GetAttributes(Type)

Devuelve una colección de atributos para el tipo de componente especificado.

GetAttributes(Object, Boolean)

Devuelve una colección de atributos para el componente especificado y un valor booleano que indica que se ha creado un descriptor de tipos personalizado.

GetAttributes(Object)

Devuelve la colección de atributos para el componente especificado.

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

Parámetros

component
Object

El componente para el que desea obtener atributos.

Devoluciones

Objeto AttributeCollection que contiene los atributos para el componente. Si component es null, este método devuelve una colección vacía.

Ejemplos

Para obtener un ejemplo de este método, vea el Matches método .

Comentarios

Los atributos devueltos por el GetAttributes método se pueden modificar dinámicamente a partir de la lista de origen del componente original por proveedores extensores (), servicios de filtro (IExtenderProviderITypeDescriptorFilterService) y filtros de atributos.

Al definir un atributo personalizado con AttributeUsageAttribute.AllowMultiple establecido en true, debe invalidar la Attribute.TypeId propiedad para que sea única. Si todas las instancias del atributo son únicas, invalide Attribute.TypeId para devolver la identidad del objeto del atributo. Si solo algunas instancias del atributo son únicas, devuelva un valor de Attribute.TypeId que devolvería igualdad en esos casos. Por ejemplo, algunos atributos tienen un parámetro de constructor que actúa como una clave única. Para estos atributos, devuelva el valor del parámetro constructor de la Attribute.TypeId propiedad .

Nota:

La implementación predeterminada de Attribute.TypeId devuelve la identidad de tipo independientemente del valor de la AttributeUsageAttribute.AllowMultiple propiedad. Para devolver varias instancias de un AttributeUsageAttribute.AllowMultiple atributo de AttributeCollection, el atributo debe invalidar la Attribute.TypeId propiedad .

Consulte también

Se aplica a

GetAttributes(Type)

Devuelve una colección de atributos para el tipo de componente especificado.

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

Parámetros

componentType
Type

Type del componente de destino.

Devoluciones

AttributeCollection con los atributos para el tipo de componente. Si el componente es null, este método devuelve una colección vacía.

Comentarios

Llame a esta versión de este método solo cuando no tenga una instancia del objeto .

Para los atributos con AttributeUsageAttribute.AllowMultiple establecido en true, la colección de atributos quita instancias duplicadas. Se trata de instancias en las que la Attribute.TypeId propiedad devuelve valores iguales.

Al definir un atributo personalizado con AttributeUsageAttribute.AllowMultiple establecido en true, debe invalidar la Attribute.TypeId propiedad para que sea única. Si todas las instancias del atributo son únicas, invalide Attribute.TypeId para devolver la identidad del objeto del atributo. Si solo algunas instancias del atributo son únicas, devuelva un valor de Attribute.TypeId que devolvería igualdad en esos casos. Por ejemplo, algunos atributos tienen un parámetro de constructor que actúa como una clave única. Para estos atributos, devuelva el valor del parámetro constructor de la Attribute.TypeId propiedad .

Nota

La implementación predeterminada de Attribute.TypeId devuelve la identidad de tipo independientemente del valor de la AttributeUsageAttribute.AllowMultiple propiedad. Para devolver varias instancias de un AttributeUsageAttribute.AllowMultiple atributo de AttributeCollection, el atributo debe invalidar la Attribute.TypeId propiedad .

Consulte también

Se aplica a

GetAttributes(Object, Boolean)

Devuelve una colección de atributos para el componente especificado y un valor booleano que indica que se ha creado un descriptor de tipos personalizado.

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

Parámetros

component
Object

El componente para el que desea obtener atributos.

noCustomTypeDesc
Boolean

true para usar un conjunto de línea de base de atributos del descriptor de tipos personalizado si component es de tipo ICustomTypeDescriptor; de lo contrario, false.

Devoluciones

AttributeCollection con los atributos para el componente. Si el componente es null, este método devuelve una colección vacía.

Comentarios

Los atributos devueltos por el GetAttributes método se pueden modificar dinámicamente a partir de la lista de orígenes de componentes originales por proveedores extensores (), servicios de filtro (IExtenderProviderITypeDescriptorFilterService) y filtros de atributos.

Al definir un atributo personalizado con AttributeUsageAttribute.AllowMultiple establecido en true, debe invalidar la Attribute.TypeId propiedad para que sea única. Si todas las instancias del atributo son únicas, invalide Attribute.TypeId para devolver la identidad del objeto del atributo. Si solo algunas instancias del atributo son únicas, devuelva un valor de Attribute.TypeId que devolvería igualdad en esos casos. Por ejemplo, algunos atributos tienen un parámetro de constructor que actúa como una clave única. Para estos atributos, devuelva el valor del parámetro constructor de la Attribute.TypeId propiedad .

Nota

La implementación predeterminada de Attribute.TypeId devuelve la identidad de tipo independientemente del valor de la AttributeUsageAttribute.AllowMultiple propiedad. Para devolver varias instancias de un AttributeUsageAttribute.AllowMultiple atributo de AttributeCollection, el atributo debe invalidar la Attribute.TypeId propiedad .

Consulte también

Se aplica a