Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
“vb.net存储”;我";数组中文本框值的数量_Vb.net - Fatal编程技术网

“vb.net存储”;我";数组中文本框值的数量

“vb.net存储”;我";数组中文本框值的数量,vb.net,Vb.net,我的程序能够在运行时添加文本框。运行时表单上文本框的数量存储在变量i中。我需要创建一个数组,将每个文本框中的所有值存储在数组中的某个位置,最大值为I。所有的文本框都有向上计数的名称。例如: 文本框1 文本框2 文本框3 等等。总之,是否有任何方法可以将I文本框数量的值存储在一个数组中?任何帮助都将不胜感激,谢谢 附加说明: 这个程序有点像注册表单,除了表单上可以有任意数量的文本框存储在数组中之外 将文本框的值添加到数组的过程将由按下按钮触发,因此我无法在创建文本框时添加文本框的值 在运行时

我的程序能够在运行时添加文本框。运行时表单上文本框的数量存储在变量
i
中。我需要创建一个数组,将每个文本框中的所有值存储在数组中的某个位置,最大值为
I
。所有的文本框都有向上计数的名称。例如:

  • 文本框1
  • 文本框2
  • 文本框3
等等。总之,是否有任何方法可以将
I
文本框数量的值存储在一个数组中?任何帮助都将不胜感激,谢谢

附加说明:

  • 这个程序有点像注册表单,除了表单上可以有任意数量的文本框存储在数组中之外
  • 将文本框的值添加到数组的过程将由按下按钮触发,因此我无法在创建文本框时添加文本框的值

在运行时创建文本框时,将文本框添加到列表中,如下所示:

    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
然后可以枚举列表并分别处理每个文本框。类似如下:

    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

可以使用字典存储每个文本框的索引和关联的文本框值。按如下方式定义字典:

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 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
然后像这样使用它:(例如,当文本更改并且文本控件为sender时)

这里有几个链接供我参考上面使用的内容:


并对代码样本持保留态度。我不是在一台有IDE的机器上。

与其使用数组来存储对文本框的引用,不如像马克·约翰斯顿(Marc Johnston)的回答所暗示的那样使用一个列表(文本框)。谢谢,我正在对字典的内容做一些研究:)我认为每次添加一个新的文本框,它覆盖了以前输入的文本框。您必须添加代码才能将文本框放入所需的父窗体或容器控件中。哎呀,不管怎样,我添加的代码是错误的。。。这很管用,谢谢:)