1

好的,我在表单上定义了 20 个标签,并且这些标签的文本在表单加载时被空白。标签被命名为“LabelValue1...LabelValue20”

在表单上,​​是一个文本框,用户将在其中输入数值。点击提交后,我需要用这个数值填充第一个可用标签。用户一次最多可以输入 20 个不同的值,我需要用他们第二次输入的值填充下一个标签,所以第四次。

有没有更简单的方法来编写代码,然后使用很长的 if else endif 语句?

4

1 回答 1

3

虽然列表框更合适,但如果您需要这样做,您可以使用表单的Controls集合按名称访问标签:

Dim _currentLabel As Integer = 1

Private Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
    If _currentLabel <= 20 Then
        Dim lbl As Label = CType(Controls("LabelValue" & _currentLabel.ToString()), Label)
        lbl.Text = TextBox1.Text
        _currentLabel += 1
    End If
End Sub

相反,要使用ListBox控件,您只需要执行以下操作:

Private Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
    If ListBox1.Items.Count < 20 Then
        ListBox1.Items.Add(TextBox1.Text)
    End If
End Sub

然后要阅读特定项目,您将执行以下操作:

Dim secondItem As String = CStr(ListBox1.Items(1))
于 2012-09-11T13:49:16.173 回答