我有一個VB.Net寫的COM類暴露給ComClass & ComVisible屬性。然後該類通過TLB提供給VBA。在VB6中,您可以輕鬆標記隱藏在對象瀏覽器中的成員,但仍可用複選標記。在VB.Net中,我發現讓VBA對象瀏覽器隱藏成員的唯一方法是在名稱前加一個下劃線。隱藏成員不使用下劃線
有沒有辦法隱藏一個成員而不強調它?
我有一個VB.Net寫的COM類暴露給ComClass & ComVisible屬性。然後該類通過TLB提供給VBA。在VB6中,您可以輕鬆標記隱藏在對象瀏覽器中的成員,但仍可用複選標記。在VB.Net中,我發現讓VBA對象瀏覽器隱藏成員的唯一方法是在名稱前加一個下劃線。隱藏成員不使用下劃線
有沒有辦法隱藏一個成員而不強調它?
我能想到的唯一方法是手動編輯由Tlbexp/Regasm(使用像Oleview和Midl這樣的工具)創建的typelib,並向該方法添加[hidden] IDL屬性。
您可以看看System.ComponentModel命名空間中的BrowsableAttribute。通常這會從智能感知中隱藏一個屬性或方法,但它也可以用於COM。
我自己不使用COM,所以不能真正測試它。
http://msdn.microsoft.com/en-us/library/system.componentmodel.browsableattribute.aspx
+1因爲這似乎是值得一試。我不確定它會工作。 – CoderDennis 2010-10-19 14:34:18