TypeLibVarAttribute 類別

定義

含有原來針對這個欄位從 COM 型別程式庫匯入的 VARFLAGSContains the VARFLAGS that were originally imported for this field from the COM type library.

public ref class TypeLibVarAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Field, Inherited=false)]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class TypeLibVarAttribute : Attribute
type TypeLibVarAttribute = class
    inherit Attribute
Public NotInheritable Class TypeLibVarAttribute
Inherits Attribute
繼承
TypeLibVarAttribute
屬性

範例

下列範例示範如何取得欄位的 TypeLibVarAttribute 值。The following example demonstrates how to get the TypeLibVarAttribute value of a field.

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 (類型程式庫匯入工具)會將此屬性套用至欄位。The Tlbimp.exe (Type Library Importer) applies this attribute to fields.

此屬性是在匯入類型程式庫時套用,而且永遠不會變更。This attribute is applied when a type library is imported and should never be changed. 只有當方法的 VARFLAGS 評估為非零時,才會套用它。It is only applied when the method's VARFLAGS evaluate to non-zero. 屬性是設計用來讓需要知道如何設定原始 VARFLAGS 的工具使用。The attribute is designed to be used by tools that need to know how the original VARFLAGS were set. Common language runtime 不會使用這個屬性。The common language runtime does not use this attribute.

建構函式

TypeLibVarAttribute(Int16)

使用指定的 TypeLibVarAttribute 值,初始化 TypeLibVarFlags 類別的新執行個體。Initializes a new instance of the TypeLibVarAttribute class with the specified TypeLibVarFlags value.

TypeLibVarAttribute(TypeLibVarFlags)

使用指定的 TypeLibVarAttribute 值,初始化 TypeLibVarFlags 類別的新執行個體。Initializes a new instance of the TypeLibVarAttribute class with the specified TypeLibVarFlags value.

屬性

TypeId

在衍生類別中實作時,取得這個 Attribute 的唯一識別碼。When implemented in a derived class, gets a unique identifier for this Attribute.

(繼承來源 Attribute)
Value

取得這個欄位的 TypeLibVarFlags 值。Gets the TypeLibVarFlags value for this field.

方法

Equals(Object)

傳回值,這個值指出此執行個體是否與指定的物件相等。Returns a value that indicates whether this instance is equal to a specified object.

(繼承來源 Attribute)
GetHashCode()

傳回這個執行個體的雜湊碼。Returns the hash code for this instance.

(繼承來源 Attribute)
GetType()

取得目前執行個體的 TypeGets the Type of the current instance.

(繼承來源 Object)
IsDefaultAttribute()

在衍生類別中覆寫時,表示這個執行個體的值是衍生類別的預設值。When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class.

(繼承來源 Attribute)
Match(Object)

在衍生類別中覆寫時,會傳回值,表示這個執行個體是否等於指定物件。When overridden in a derived class, returns a value that indicates whether this instance equals a specified object.

(繼承來源 Attribute)
MemberwiseClone()

建立目前 Object 的淺層複製。Creates a shallow copy of the current Object.

(繼承來源 Object)
ToString()

傳回代表目前物件的字串。Returns a string that represents the current object.

(繼承來源 Object)

明確介面實作

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

將一組名稱對應至一組對應的分派識別項 (Dispatch Identifier)。Maps a set of names to a corresponding set of dispatch identifiers.

(繼承來源 Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

擷取物件的類型資訊,可以用來取得介面的類型資訊。Retrieves the type information for an object, which can be used to get the type information for an interface.

(繼承來源 Attribute)
_Attribute.GetTypeInfoCount(UInt32)

擷取物件提供的類型資訊介面數目 (0 或 1)。Retrieves the number of type information interfaces that an object provides (either 0 or 1).

(繼承來源 Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

提供物件所公開的屬性和方法的存取權。Provides access to properties and methods exposed by an object.

(繼承來源 Attribute)

適用於

另請參閱