TypeAttributes Enumeration
[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]
Specifies type attributes.
This enumeration has a FlagsAttribute attribute that allows a bitwise combination of its member values.
Namespace: System.ReflectionAssembly: mscorlib (in mscorlib.dll)
| Member name | Description | |
|---|---|---|
| Abstract | Specifies that the type is abstract. | |
| AnsiClass | LPTSTR is interpreted as ANSI. | |
| AutoClass | LPTSTR is interpreted automatically. | |
| AutoLayout | Specifies that class fields are automatically laid out by the common language runtime. | |
| BeforeFieldInit | Specifies that calling static methods of the type does not force the system to initialize the type. | |
| Class | Specifies that the type is a class. | |
| ClassSemanticsMask | Specifies class semantics information; the current class is contextful (else agile). | |
| CustomFormatClass | LPSTR is interpreted by some implementation-specific means, which includes the possibility of throwing a NotSupportedException. Not used in the Microsoft implementation of the .NET Framework. | |
| CustomFormatMask | Used to retrieve non-standard encoding information for native interop. The meaning of the values of these 2 bits is unspecified. Not used in the Microsoft implementation of the .NET Framework. | |
| ExplicitLayout | Specifies that class fields are laid out at the specified offsets. | |
| HasSecurity | Type has security associate with it. | |
| Import | Specifies that the class or interface is imported from another module. | |
| Interface | Specifies that the type is an interface. | |
| LayoutMask | Specifies class layout information. | |
| NestedAssembly | Specifies that the class is nested with assembly visibility, and is thus accessible only by methods within its assembly. | |
| NestedFamANDAssem | Specifies that the class is nested with assembly and family visibility, and is thus accessible only by methods lying in the intersection of its family and assembly. | |
| NestedFamily | Specifies that the class is nested with family visibility, and is thus accessible only by methods within its own type and any subtypes. | |
| NestedFamORAssem | Specifies that the class is nested with family or assembly visibility, and is thus accessible only by methods lying in the union of its family and assembly. | |
| NestedPrivate | Specifies that the class is nested with private visibility. | |
| NestedPublic | Specifies that the class is nested with public visibility. | |
| NotPublic | Specifies that the class is not public. | |
| Public | Specifies that the class is public. | |
| ReservedMask | Attributes reserved for runtime use. | |
| RTSpecialName | Runtime should check name encoding. | |
| Sealed | Specifies that the class is concrete and cannot be extended. | |
| SequentialLayout | Specifies that class fields are laid out sequentially, in the order that the fields were emitted to the metadata. | |
| Serializable | Specifies that the class can be serialized. | |
| SpecialName | Specifies that the class is special in a way denoted by the name. | |
| StringFormatMask | Used to retrieve string information for native interoperability. | |
| UnicodeClass | LPTSTR is interpreted as UNICODE. | |
| VisibilityMask | Specifies type visibility information. | |
| WindowsRuntime | Specifies a Windows Runtime type. |
The following example shows the use of type attributes. The fact that there is a member in each of several groupings that has the value zero means that you must use masks before testing for those members.
For most purposes, properties like Type::IsClass, Type::IsAutoLayout, and Type::IsSpecialName are easier to use than type attributes.
Note: |
|---|
To run this example, see Building examples that have static TextBlock controls for Windows Phone 8. |
Note: