【发布时间】:2020-07-24 20:25:30
【问题描述】:
If you click this link to see this image, 我有一个包含各种数字项的列表框。我想知道如何从列表中获取每个项目并将其存储到文本框。
由于每个文本框都被命名为 TextBox1、TextBox2、TextBox3 等,我尝试使用此代码,
For i = 1 To 15
Me.Controls(String.Format("TextBox{0}", i)).Text = item.Value
Next
但它只从文本框中获取最后一项,并将它们全部放在前 15 个文本框中。 Click to view the output.
我想要的是一个循环代码,它将从列表框中获取第一项并将其存储在 textbox1 中,从列表框中获取第二项并将其存储在 textbox2 中,依此类推。
感谢任何帮助。谢谢
【问题讨论】:
-
如果你在循环的每次迭代中分配相同的东西,即
item.Value,为什么每次都得到相同的值你会感到惊讶呢?如果您希望每次迭代都使用不同的值,那么您需要每次迭代都获得不同的值。您真正想要回答的问题是如何在循环中从ListBox获取项目,这是一个您可以自己轻松回答的问题。 -
另一个问题可能是当它们的位置显然在其他地方时,这些值如何最终出现在 ListBox 中。 ListBox 不应用作从某个源加载的数据的 存储库。使用
List(Of Decimal)或List(Of class)来存储您的值并使用更合适的选择器 将它们分配到它们所属的位置。