2011-04-07 94 views
0

我需要從我的VS2010 C#項目訪問第三方非託管DLL的一些方法和屬性。在將DLL添加到引用後嘗試訪問它時,一個屬性特別「消失」。我正在使用MS VS2010,目標平臺是XP SP3 x86。XXX不包含定義,也沒有擴展方法

從.NET VB,Item屬性顯示爲

Item([Object], [Object]) As Object 

ReadOnly Default Property Item(Optional ByVal Name As Object = Nothing, Optional ByVal Index As Object = Nothing) As Object 

我可以沒有問題使用。 然而,在C#中,此屬性會消失,一個最接近我能找到成爲

this[[object], [object]] 

dynamic this[[object Name = System.Type.Missing], [object Index = System.Type.Missing]] { get; } 

如何我在C#項目訪問此屬性?謝謝。

回答

2

VB.NET中的Item屬性是C#中的索引器。 因此,下面VB.NET和C#代碼是等效的:

/* VB.NET */ 
yourObject.Item(o1, o2) 

/* C# */ 
yourObject[o1, o2]; 
0

,這是一indexer,並且可以這樣進行訪問。

var yourObj = new SomeObject(); 
var item = yourObj[value1,value2]; 

換句話說,你只需要使用[]括號對象變量本身之後,而不是Item()

相關問題