2010-03-29 2 views
3

나는 단지 ID를 지정 또는으로 자식 개체에 액세스 할 수 VB에 관한 (덤프) 질문노하우 속성이 이름없이 액세스 할 수있는 클래스를 작성 그것을

가 나는 종종 타사 클래스를 사용/C 번호를 키.

예 :

대신 작성

:

DataRow row = GetAPopulatedDataRowSomeWhere(); 
Object result = row.Items[1]; // DataRow has no Items property 
Object result = row.Items["colName"]; // Also not possible 

내가 멤버에 액세스하는 코드를 사용

DataRow row = GetAPopulatedDataRowSomeWhere(); 
Object result = row[1]; 
Object result = row["colName"]; 

사람이 클래스가 지원처럼 보이게하는 방법을 말해 줄 수 이 구문? 내 수업에는이 방법으로 액세스하려는 사전이 있습니다.

MyClass["key"]; // <- that's what I want 
MyClass.SubItems["key"]; // <- that's how I use it now 

답변

11

indexed property이 필요합니다.

public class MyClass 
{ 
    public object this[string key] 
    { 
     get { return SubItems[key]; } 
     set { SubItems[key] = value; } 
    } 
} 
+0

고마워요. 그것이 내가 필요한 신호였다. –

관련 문제