2017-05-08 131 views
0

我试图找到一种方法来遍历字符串列表以显示在文本框中。这些字符串是从一个名为“文本”的单独的类中检索的。 字符串是在“文本”类中(对于ngs1,2,3,等)使用变量遍历变量?

Public Shared ngs1 As String = "Text" 

该块运行的下一个按钮后,按钮的目的是通过文本列表进行迭代时宣布显示。

 ElseIf firstTimeRun = True Then 
     welcome += 1 
     Select Case welcomePages 
      Case 1 
       txtDisplay.Text = texts.ngs1 
      Case 2 
       txtDisplay.Text = texts.ngs2 
      Case 3 
       txtDisplay.Text = texts.ngs3 
     End Select 

我希望能够做到这一点没有选择的情况下,所以它本质

'Pseudo code 
ElseIf firstTimeRun = True Then 
welcome += 1 
txtDisplay.text = texts.ngs(welcome) 

我不知道如何正确地做到这一点,通过在使用变量其他变量的名称。任何帮助将不胜感激,谢谢!

+0

您是否尝试过使用任何类型的集合?向量,数组,列表等。 – AugustoQ

+0

@AugustoQ啊,道歉,我尝试了矢量,但对VB来说是新手,他们让我困惑,尽管MSDN试图帮助。阵列我也尝试过,但我碰到类似的问题。当时我一直试图这样做,你会推荐使用Array/Vector来完成这个任务吗?感谢您及时的回复! –

+0

既然你已经有了你的变量的索引,那么创建一个数组并直接访问索引,而不是创建一个大的选择案例会容易得多。 – AugustoQ

回答

0

如果你只是想通过这一切文本进行迭代,只需要创建一个列表(字符串)或数组,并添加所有的ngsX ...

如例: Dim list as List(Of String)

Dim indexActualShownString as Integer 

然后你可以在你的Clicked_Event中使用

txtDisplay.text=list.Items(indexActualShownString) as Integer 
indexActualShwonString += 1 

但是我不确定我是否理解你的问题是正确的。而且你还应该实现一种重置indexActualShownString的方式,因为我不知道它的目的究竟是什么。

+0

这确实有些帮助,但我希望它能够在每次点击按钮时带来下一个按钮,尽管我似乎正在接近解决它,谢谢您的回应! –

+0

然后,只要在另一个变量中显示实际显示的项目的索引,并且每次点击事件,该变量就会变成一个......您可以将该变量用作表单的全局变量或作为班级中的属性“文本” –

+0

我编辑了我的答案,看看如果你现在找到一些帮助:) –