Поделиться через


TypeLibVarAttribute Класс

Определение

Содержит флаги VARFLAGS, ранее импортированные для данного поля из библиотеки COM-типов.

public ref class TypeLibVarAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Field, Inherited=false)]
public sealed class TypeLibVarAttribute : Attribute
[System.AttributeUsage(System.AttributeTargets.Field, Inherited=false)]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class TypeLibVarAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Field, Inherited=false)>]
type TypeLibVarAttribute = class
    inherit Attribute
[<System.AttributeUsage(System.AttributeTargets.Field, Inherited=false)>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type TypeLibVarAttribute = class
    inherit Attribute
Public NotInheritable Class TypeLibVarAttribute
Inherits Attribute
Наследование
TypeLibVarAttribute
Атрибуты

Примеры

В следующем примере показано, как получить TypeLibVarAttribute значение поля.

using namespace System;
using namespace System::Reflection;
using namespace System::Runtime::InteropServices;

ref class ClassD
{
public:
   static bool IsHiddenField( FieldInfo^ fi )
   {
      array<Object^>^FieldAttributes = fi->GetCustomAttributes( TypeLibVarAttribute::typeid, true );
      if ( FieldAttributes->Length > 0 )
      {
         TypeLibVarAttribute^ tlv = dynamic_cast<TypeLibVarAttribute^>(FieldAttributes[ 0 ]);
         TypeLibVarFlags flags = tlv->Value;
         return (flags & TypeLibVarFlags::FHidden) != (TypeLibVarFlags)0;
      }

      return false;
   }
};
using System;
using System.Reflection;
using System.Runtime.InteropServices;

namespace D
{
    class ClassD
    {
        public static bool IsHiddenField( FieldInfo fi )
        {
            object[] FieldAttributes = fi.GetCustomAttributes( typeof( TypeLibVarAttribute ), true);
        
            if( FieldAttributes.Length > 0 )
            {
                TypeLibVarAttribute tlv = ( TypeLibVarAttribute )FieldAttributes[0];
                TypeLibVarFlags  flags = tlv.Value;
                return ( flags & TypeLibVarFlags.FHidden ) != 0;
            }
            return false;
        }
    }
}
Imports System.Reflection
Imports System.Runtime.InteropServices

Module D
    Public Function IsHiddenField(ByVal fi As FieldInfo) As Boolean
        Dim FieldAttributes As Object() = fi.GetCustomAttributes(GetType(TypeLibVarAttribute), True)

        If FieldAttributes.Length > 0 Then
            Dim tlv As TypeLibVarAttribute = FieldAttributes(0)
            Dim flags As TypeLibVarFlags = tlv.Value
            Return (flags & TypeLibVarFlags.FHidden) > 0
        End If
        Return False
    End Function
End Module

Комментарии

Tlbimp.exe (средство импорта библиотек типов) применяет этот атрибут к полям.

Этот атрибут применяется при импорте библиотеки типов и не должен изменяться. Он применяется только в том случае, если значение метода VARFLAGS не равно нулю. Атрибут предназначен для использования средствами, которые должны знать, как были заданы исходные VARFLAGS данные. Среда CLR не использует этот атрибут.

Конструкторы

TypeLibVarAttribute(Int16)

Инициализирует новый экземпляр класса TypeLibVarAttribute заданным значением TypeLibVarFlags.

TypeLibVarAttribute(TypeLibVarFlags)

Инициализирует новый экземпляр класса TypeLibVarAttribute заданным значением TypeLibVarFlags.

Свойства

TypeId

В случае реализации в производном классе возвращает уникальный идентификатор для этого атрибута Attribute.

(Унаследовано от Attribute)
Value

Возвращает значение TypeLibVarFlags для этого поля.

Методы

Equals(Object)

Возвращает значение, показывающее, равен ли экземпляр указанному объекту.

(Унаследовано от Attribute)
GetHashCode()

Возвращает хэш-код данного экземпляра.

(Унаследовано от Attribute)
GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
IsDefaultAttribute()

При переопределении в производном классе указывает, является ли значение этого экземпляра значением по умолчанию для производного класса.

(Унаследовано от Attribute)
Match(Object)

При переопределении в производном классе возвращает значение, указывающее, является ли этот экземпляр равным заданному объекту.

(Унаследовано от Attribute)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)

Явные реализации интерфейса

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Сопоставляет набор имен соответствующему набору идентификаторов диспетчеризации.

(Унаследовано от Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Возвращает сведения о типе объекта, которые можно использовать для получения сведений о типе интерфейса.

(Унаследовано от Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Возвращает количество предоставляемых объектом интерфейсов для доступа к сведениям о типе (0 или 1).

(Унаследовано от Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Предоставляет доступ к открытым свойствам и методам объекта.

(Унаследовано от Attribute)

Применяется к

См. также раздел