好的,我在表单上定义了20个标签,这些标签的文本在表单加载时被清空。标签名为“LabelValue1 ... LabelValue20”
在表单上,是一个文本框,用户将在其中输入数值。点击提交后,我需要使用此数值填充第一个可用标签。用户一次最多可以输入20个不同的值,我需要使用第二次输入的值来填充下一个标签,然后排在第四位。
是否有一种更简单的方法来编码,然后使用一个巨大的if if else endif语句?
答案 0 :(得分: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))