我是VB.Net的新手,对某些事情感到有些困惑。 我想要两个列表框,每个列表框中我都有项目。在我的第一个列表框中,我有4个项目,在我的第二个列表框中,我有5个项目。我还添加了一个文本框,用于我想要存储在数组中的值。
例如:如果我选择第一个文本框的第一个值,第二个文本框的第二个值并在文本框中输入“5”,则5将存储在数组的(0,1)中
然后我希望我的第一个列表框中每个项目的所有值都显示在标签中,第二个项目,第三个项目和第四个项目相同。我想我需要一个循环。
我知道如何创建数组,以及如何在数组中存储值,但我似乎无法弄清楚如何使用列表框和文本框来使其工作。
答案 0 :(得分:1)
我创建了一个包含以下控件的表单:
ComboBox1
ComboBox2
Button1
TextBox1
我已经为Form_Load和Button1_Click事件添加了代码,并创建了一个ComboBox_SelectedIndexChanged事件处理程序来处理两个组合框索引更改。
Public Class Form1
Private _array(,) As String
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
ReDim _array(0 To ComboBox1.Items.Count, 0 To ComboBox2.Items.Count)
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim c1 As Integer = If(ComboBox1.SelectedIndex = -1, 0, ComboBox1.SelectedIndex)
Dim c2 As Integer = If(ComboBox2.SelectedIndex = -1, 0, ComboBox2.SelectedIndex)
Debug.Print(String.Format("Set ({0},{1}) to {2}", c1, c2, TextBox1.Text))
_array(c1, c2) = TextBox1.Text
End Sub
Private Sub ComboBox_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox1.SelectedIndexChanged, ComboBox2.SelectedIndexChanged
Dim c1 As Integer = If(ComboBox1.SelectedIndex = -1, 0, ComboBox1.SelectedIndex)
Dim c2 As Integer = If(ComboBox2.SelectedIndex = -1, 0, ComboBox2.SelectedIndex)
Debug.Print(String.Format("Get ({0},{1}) to {2}", c1, c2, TextBox1.Text))
TextBox1.Text = _array(c1, c2)
End Sub
End Class
我所展示的是:
1.加载表单时调整数组大小以匹配组合框中的元素数量
2.数据在事件中加载到数组中(在本例中为按钮单击事件)
3.当组合框中的任何一个更改时,再次检索数据。
希望有所帮助。