我的程序能够在运行时添加文本框。运行时表单上的文本框数量存储在变量i
中。我需要创建一个数组,该数组存储数组中某个位置的每个文本框中的所有值,最大值为i
。所有文本框的名称都向上计数。例如:
等等。总之,有没有什么方法可以在数组中存储i
数量的文本框的值?任何帮助将不胜感激,谢谢。
附加说明:
答案 0 :(得分:2)
在运行时创建文本框时,将文本框添加到列表中,类似于以下内容:
Dim textboxes As New List(Of TextBox)
For I = 1 To 3
Dim tb As New TextBox
textboxes.Add(tb)
Next
然后,您可以枚举列表并分别处理每个文本框。与下面类似:
For Each tb As TextBox In textboxes
Dim value As String = tb.Text
Next
答案 1 :(得分:1)
您可以使用字典存储每个文本框的索引和相关的文本框值。像这样定义字典:
Dim dict As New Dictionary(Of String, String)
像这样填充:
For index As Integer = 0 To 5
dim txtBox = new TextBox
txtBox.Name = index ' we'll make this index the name
MyForm.Controls.Add(txtBox);
dict.Add(index, txtBox )
Next
然后像这样使用它:(例如,当文本更改且文本控件是发件人时)
dim txtBox = (TextBox)sender;
dict(txtBox .Name) = txtBox .Text
以下是一些参考我上面使用的内容的链接:
将代码样本带上一粒盐。我没有使用IDE的计算机。