Class
AttributeInfo
Description
Provides information on the attributes of an item via the Introspection system. Attributes are added to project items using the Inspector.
Property descriptions
AttributeInfo.Name
Name As String
The name of the item. This is only the class name. To get the full namespace path, use FullName instead.
This property is read-only.
This code gets the list of properties for the passed type instance.
Var d As DateTime = DateTime.Now
For Each prop As Introspection.PropertyInfo In Introspection.GetType(d).GetProperties
ListBox1.AddRow(prop.Name)
Next
AttributeInfo.Value
Value As Variant
The optional value of the attribute.
This property is read-only.
Notes
For attributes of classes, attributes are inherited from the parent class and attribute values are overridden if redefined by the subclass.
Add attributes to project items, methods, properties, constants, etc. by using the "Advanced" tab on the Inspector.
Sample code
Suppose Window1 has three attributes: The first attribute contains the Name only and the others have both a Name and Value:
Name |
Value |
---|---|
myName1 |
|
myName2 |
"Foo" |
myName3 |
23 |
The following code retrieves the attributes and displays them in a ListBox:
For Each attribute As Introspection.AttributeInfo In Introspection.GetType(window1).GetAttributes
ListBox1.AddRow(attribute.Name)
If attribute.Value.IsNull Then
ListBox1.CellTextAt(ListBox1.LastAddedRowIndex,1) = "No Value"
Else
ListBox1.CellTextAt(ListBox1.LastAddedRowIndex,1) = attribute.Value
End If
Next
Compatibility
All project types on all supported operating systems.
See also
Object parent class; ConstructorInfo, MemberInfo, MethodInfo, ObjectIterator, ParameterInfo, PropertyInfo, TypeInfo classes; Introspection module; GetTypeInfo function; Introspection namespace