2011-04-07 59 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()

相关问题