我有这个VB.NET ArrayList
对象,它工作得很好。我已经像这样构建了它。这是我用过的第一个。
Public Class MyObj
Private _str1 As String
Private _str2 As String
Public Property Str1() As String
Get
Return _str1
End Get
Set(ByVal value As String)
_str1 = value
End Set
End Property
Public Property Str2() As String
Get
Return _str2
End Get
Set(ByVal value As String)
_str2 = value
End Set
End Property
Public Sub New(ByRef pStr1 As String)
_str1 = pStr1
End Sub
End Class
然后我开始这样做......
Dim MyObj1 As ArrayList = New ArrayList()
MyObj1.Add(New MyObj("myTestString"))
所以这一切都在以后工作。所以我打包了arraylist并将其存储在类级变量中。然后用另一种方法我抓住了我的arraylist。然后我想为_str2
分配一个值。有没有人对如何解决这个问题有任何建议。我一直试图了解情况。这就是我的意思。
For i = 0 To MyObj1.Items.Count - 1
MyObj1.Item(i)("Str2") = "tesstring2"
Next
答案 0 :(得分:2)
正如Tim写的那样,最好使用List而不是旧的ArrayList。
进行设置,然后访问Str2
实例的属性MyObj
:
Dim myList As New List(Of MyObj)
myList.Add(New MyObj("Hello"))
For i = 0 To myList.Count - 1
myList(i).Str2 = "World"
Next
注意它是.Str2
,而不是("Str2")
。