2009-12-24 75 views
0

好吧,這很難解釋,但這裏。 我有一個3D對象列表。對象類型稱爲CObject,另一類CTile則監聽CObject。C#在3D列表中通過父類訪問繼承的成員

 static public List<List <List <CObject>>> CObjList 
        = new List<List<List<CObject>>>(); 

好吧現在可以說,列表中充滿了正確的信息。 (可以通過代碼中的breakpionts查看); 所以我進去的列表來訪問一個項目像下面

CObjList.[0][0][0].titleImageId 

好titleImageId是CTile的一員,但我不能使用此語法訪問它。它的公衆和一切。 我可以訪問的所有內容都是CObject類的成員。

我希望我已盡我所能解釋自己。由於

回答

2
((CTile)CObjList[0][0][0]).titleImageId 

(CObjList[0][0][0] as CTile).titleImageId 
+0

的工作! 非常感謝。 – 2009-12-24 18:51:34

1

用途:

CList l = CObjList[0][0][0] as CList; 
if(l != null) 
    id = l.titleImageId 

您應該直接索引CObjList,不使用點運算符