Thought id post the code, than maybe someone can help me out. I hope some one can.
Public Class ClassKit
Inherits System.Collections.CollectionBase
Public Sub AddDrug(ByVal NewDrug As ClassDrug)
List.Add(NewDrug)
End Sub
Public Sub RemoveDrug(ByVal Index As Integer)
If Index > Count - 1 Or Index < 0 Then
MsgBox("Index Not Valid!"

Else
List.RemoveAt(Index)
End If
End Sub
Public Property Drug(ByVal Index As Integer) As ClassDrug
Get
Return CType(List.Item(Index), ClassDrug)
End Get
Set(ByVal Value As ClassDrug)
List.Item(Index) = Value
End Set
End Property
End Class
Public Class ClassDrug
Private Shared c_Name As String
Private Shared c_TradeName As String
Private Shared c_Strength As String
Private Shared c_Volume As String
Private Shared c_ID As Long
Private Shared c_BatchNumber As String
Private Shared c_ExpiryDate As Date
Public Shared Property Name() As String
Get
Return c_Name
End Get
Set(ByVal Value As String)
MsgBox(Value)
c_Name = Value
End Set
End Property
Public Shared Property TradeName() As String
Get
Return c_TradeName
End Get
Set(ByVal Value As String)
c_TradeName = Value
End Set
End Property
Public Shared Property Strength() As String
Get
Return c_Strength
End Get
Set(ByVal Value As String)
c_Strength = Value
End Set
End Property
Public Shared Property Volume() As String
Get
Return c_Volume
End Get
Set(ByVal Value As String)
c_Volume = Value
End Set
End Property
Public Shared Property ID() As Long
Get
Return c_ID
End Get
Set(ByVal Value As Long)
c_ID = Value
End Set
End Property
Public Shared Property BatchNumber() As String
Get
Return c_BatchNumber
End Get
Set(ByVal Value As String)
c_BatchNumber = Value
End Set
End Property
Public Shared Property ExpiryDate() As Date
Get
Return c_ExpiryDate
End Get
Set(ByVal Value As Date)
c_ExpiryDate = Value
End Set
End Property
Public Overrides Function ToString() As String
Dim TradeName As String
If Me.TradeName <> "" Then
TradeName = " (" & Trim(Me.TradeName) & "

"
Else
TradeName = Nothing
End If
Return Trim(Me.Name) & ", " & Trim(Me.Strength) & ", " & Trim(Me.Volume) & Trim(TradeName)
End Function
End Class
Sub ReadDrug
Dim NewKit As New KitClass
Dim NewDrug As DrugClass
NewDrug = New DrugClass
NeDrug.Name = "Drug1"
NewKit.Drug.Add(NewDrug)
NewDrug = New DrugClass
NewDrug.Name = "Drug2"
NewKit.Drug.Add(NewDrug)
NewDrug = New DrugClass
NewDrug.Name = "Drug3"
NewKit.Drug.Add(NewDrug)
MsgBox NewKit.Drug(1).ToString
End Sub
As i said if i loop through watching it load the class it seems to be adding the correct data, but then when i loop through to read the class back it always displays the last item added.
Thanks for your help.
James Proctor