vb.net ListBox select 多个项目并以父形式传递到数组
vb.net ListBox select multiple items and pass into array in parent form
我正在使用此代码填充 vb.net
中的列表框
conn.Open()
SQL = "select company from customer order by company ASC"
myCommand.Connection = conn
myCommand.CommandText = SQL
reader = myCommand.ExecuteReader
While reader.Read()
ListBox1.Items.Add(reader.GetString(0))
End While
此代码以名为 customers
的形式运行,我在初始形式 (form1
)
上使用 customers.show()
一旦在 customers
表单中选择了项目,我如何将所有值传递回准备好处理数据的父表单?
我希望这对您有所帮助,但我不太确定您想要什么。
此代码将所选项目传递到某些列表框中的 "Form1" :
Private Sub Button_Click(sender As Object, e As EventArgs) Handles Some_Button_in_Customers_Form.Click
For Each itm in Listbox1.SelectedItems
Form1.Some_ListBox.Items.Add(itm)
Loop
'if you want to end form after passing customers UnHighlight next line
'Me.Close()
End Sub
如果您不想在客户表单中添加按钮,请在您的代码后使用下一个代码:
Dim btn as New Button
AddHandler btn.Click, AddressOf Button_Click
btn.PerformClick()
和处理程序代码将没有 "Handles Some_Button_in_Customers_Form.Click" 像这样:
Private Sub Button_Click(sender As Object, e As EventArgs)
For Each itm in Listbox1.SelectedItems
Form1.Some_ListBox.Items.Add(itm)
Loop
'if you want to end form after passing customers UnHighlight next line
'Me.Close()
End Sub
你可以使用ListBox1的SelectedItems
属性,得到所有选中的item集合,然后你可以使用cast扩展方法将这个集合转换成可枚举的字符串,再转换成列表或数组。
Public Function getSelectedItems()
return ListBox1.SelectedItems.Cast(of String).Tolist()
End Function
然后使用 customers
表单实例从 Form1
中调用此函数
我正在使用此代码填充 vb.net
中的列表框conn.Open()
SQL = "select company from customer order by company ASC"
myCommand.Connection = conn
myCommand.CommandText = SQL
reader = myCommand.ExecuteReader
While reader.Read()
ListBox1.Items.Add(reader.GetString(0))
End While
此代码以名为 customers
的形式运行,我在初始形式 (form1
)
customers.show()
一旦在 customers
表单中选择了项目,我如何将所有值传递回准备好处理数据的父表单?
我希望这对您有所帮助,但我不太确定您想要什么。 此代码将所选项目传递到某些列表框中的 "Form1" :
Private Sub Button_Click(sender As Object, e As EventArgs) Handles Some_Button_in_Customers_Form.Click
For Each itm in Listbox1.SelectedItems
Form1.Some_ListBox.Items.Add(itm)
Loop
'if you want to end form after passing customers UnHighlight next line
'Me.Close()
End Sub
如果您不想在客户表单中添加按钮,请在您的代码后使用下一个代码:
Dim btn as New Button
AddHandler btn.Click, AddressOf Button_Click
btn.PerformClick()
和处理程序代码将没有 "Handles Some_Button_in_Customers_Form.Click" 像这样:
Private Sub Button_Click(sender As Object, e As EventArgs)
For Each itm in Listbox1.SelectedItems
Form1.Some_ListBox.Items.Add(itm)
Loop
'if you want to end form after passing customers UnHighlight next line
'Me.Close()
End Sub
你可以使用ListBox1的SelectedItems
属性,得到所有选中的item集合,然后你可以使用cast扩展方法将这个集合转换成可枚举的字符串,再转换成列表或数组。
Public Function getSelectedItems()
return ListBox1.SelectedItems.Cast(of String).Tolist()
End Function
然后使用 customers
表单实例从 Form1
中调用此函数