2011-08-08 11 views
1

私はクラスを作成し、オブジェクトをArraylistに入れました。ここでオブジェクトを列挙する

はクラスです:私が欲しい

Public Class ItemColl 

    Public TBPid, PAid As Integer 

    Public Sub New(ByVal _TBPid As Integer, ByVal _PAid As Integer) 
     TBPid = _TBPid 
     PAid = _PAid 
    End Sub 
End Class 

Dim arrlst as new ArrayList 

arrlst.Add(new ItemColl("1a","12")) 

arrlst.Add(new ItemColl("1b","123")) 

arrlst.Add(new ItemColl("1as","45")) 

arrlst.Add(new ItemColl("1tr","67")) 

は、私はそのインデックスを使用してArrayListのを列挙するたびに、それは私に "ItemColl.TBPid" をもたらすである(下記を参照してください。)

For i As Integer = 0 To arrlst.Count - 1 

    arrlst.item(i) //Here I need TBPid to be returned. 

Next 

私はToString()をオーバーライドすることができますが、既存のコードを ".ToString()"で変更するには多くの時間がかかります。

+0

@ [Umesh Kumawat]使用しているテクノロジと言語(たとえば、お客様の場合は.NET、VB.NET)で質問にタグを付けてください。あなたが他の回答を得られなかった理由は、あなたがその技術を特定しなかったことです。そのため、.NETプログラマーはあなたの質問がそれらに関連しているかどうかを知りませんでした。タグを追加しようとしましたが、承認されませんでした。 – Zesty

答えて

1

クラスを作成し、そのタイプのgeneric listを作成します。強く型付けされたリストを使用すると、その後、以下のようにオブジェクトのプロパティにアクセスすることができます。もちろん

Dim myList As New List(Of ItemColl)() 
myList(0).PAid1 = 1 

、あなたもItemCollへのArrayList内の各オブジェクトをキャストすることができます

TBPid= CType(arrlst(0), ItemColl).TBPid 

しかし、リストを使うことをお勧めします。

関連する問題