TypeLibVarAttribute 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
包含原本從 COM 類型庫匯入此欄位的 VARFLAGS。
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 域的值。
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 設定方式的工具使用。 通用語言執行時不使用此屬性。
建構函式
| 名稱 | Description |
|---|---|
| TypeLibVarAttribute(Int16) |
初始化一個以指定TypeLibVarAttribute值的新TypeLibVarFlags類別實例。 |
| TypeLibVarAttribute(TypeLibVarFlags) |
初始化一個以指定TypeLibVarAttribute值的新TypeLibVarFlags類別實例。 |
屬性
| 名稱 | Description |
|---|---|
| TypeId |
在衍生類別中實作時,取得這個 Attribute的唯一標識碼。 (繼承來源 Attribute) |
| Value |
這能理解 TypeLibVarFlags 這個領域的價值。 |
方法
| 名稱 | Description |
|---|---|
| Equals(Object) |
傳回值,這個值表示這個實例是否等於指定的物件。 (繼承來源 Attribute) |
| GetHashCode() |
傳回這個實例的哈希碼。 (繼承來源 Attribute) |
| GetType() |
取得目前實例的 Type。 (繼承來源 Object) |
| IsDefaultAttribute() |
在衍生類別中覆寫時,指出這個實例的值是否為衍生類別的預設值。 (繼承來源 Attribute) |
| Match(Object) |
在衍生類別中覆寫時,傳回值,指出這個實例是否等於指定的物件。 (繼承來源 Attribute) |
| MemberwiseClone() |
建立目前 Object的淺層複本。 (繼承來源 Object) |
| ToString() |
傳回表示目前 物件的字串。 (繼承來源 Object) |
明確介面實作
| 名稱 | Description |
|---|---|
| _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
將一組名稱對應至一組對應的分派識別項 (Dispatch Identifier)。 (繼承來源 Attribute) |
| _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
擷取 物件的型別資訊,可用來取得介面的類型資訊。 (繼承來源 Attribute) |
| _Attribute.GetTypeInfoCount(UInt32) |
擷取物件提供的類型資訊介面數目 (0 或 1)。 (繼承來源 Attribute) |
| _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
提供物件所公開屬性和方法的存取權。 (繼承來源 Attribute) |