如何将项目从 ListBox 转移到集合 VB.NET
How to transfer items from a ListBox to a collection VB.NET
在我的一个表单中,我有一个包含字符串项列表的列表框 (formListBox)。我想做的是将列表框中的所有项目转移到一个集合中。到目前为止,我已经尝试了以下但没有成功:
Dim newItems As New ListBox.ObjectCollection(formListBox)
For Each item As String In newItems
myArrayList.addNewItem(item)
Next
执行此操作后,arraylist 中的项目数返回为 0。我感觉我误解了 "ListBox.ObjectCollection(formListBox)" 部分 - 我从中得到的印象是它 returns来自 ListBox 的集合,但我得到的结果另有建议。
试试这个
Dim arr1()
ReDim arr1(ListBox1.Items.Count - 1)
ListBox1.Items.CopyTo(arr1, 0)
或
Dim ArrayItems() As String
'//ADD ITEMS INTO ARRAY
'//FIRST FIND HOW MANY ITEMS IN LISTBOX AND REDIM THE ARRAT FOR SIZE
ReDim ArrayItems(List1.ListCount)
'//NOW ADD ITEMS
For i = 1 To List1.ListCount
List1.ListIndex = i - 1
ArrayItems(i) = List1.Text
Next i
或
使用 LINQ
(From item As Object In yourListBox.ObjectCollection Select item.ToString()).ToArray()
在我的一个表单中,我有一个包含字符串项列表的列表框 (formListBox)。我想做的是将列表框中的所有项目转移到一个集合中。到目前为止,我已经尝试了以下但没有成功:
Dim newItems As New ListBox.ObjectCollection(formListBox)
For Each item As String In newItems
myArrayList.addNewItem(item)
Next
执行此操作后,arraylist 中的项目数返回为 0。我感觉我误解了 "ListBox.ObjectCollection(formListBox)" 部分 - 我从中得到的印象是它 returns来自 ListBox 的集合,但我得到的结果另有建议。
试试这个
Dim arr1()
ReDim arr1(ListBox1.Items.Count - 1)
ListBox1.Items.CopyTo(arr1, 0)
或
Dim ArrayItems() As String
'//ADD ITEMS INTO ARRAY
'//FIRST FIND HOW MANY ITEMS IN LISTBOX AND REDIM THE ARRAT FOR SIZE
ReDim ArrayItems(List1.ListCount)
'//NOW ADD ITEMS
For i = 1 To List1.ListCount
List1.ListIndex = i - 1
ArrayItems(i) = List1.Text
Next i
或
使用 LINQ
(From item As Object In yourListBox.ObjectCollection Select item.ToString()).ToArray()