从一个表单中获取数组并在另一个表单上的标签中显示内容

时间:2015-05-15 02:47:34

标签: arrays vb.net forms labels

我正在研究一些将用户的答案存储到数组中的代码,并将它们与另一个数组进行比较,并在其中包含正确的答案。我已经有了这部分工作。我坚持的部分是让用户的答案出现在另一个表格的标签上(考试结果表格)我为另一个表格中的标签创建一个数组,然后使其等于用户答案的​​数组,但由于某种原因当我点击提交时,它们不会显示在下一个表格上。

代码:

'Display user answers on the exam result form
    Dim aUserAnswersDisplayed() As String = {frmExamResults.lblUserAnswer1.Text, frmExamResults.lblUserAnswer2.Text,
                                             frmExamResults.lblUserAnswer3.Text, frmExamResults.lblUserAnswer4.Text,
                                             frmExamResults.lblUserAnswer5.Text, frmExamResults.lblUserAnswer6.Text,
                                             frmExamResults.lblUserAnswer7.Text, frmExamResults.lblUserAnswer8.Text,
                                             frmExamResults.lblUserAnswer9.Text, frmExamResults.lblUserAnswer10.Text,
                                             frmExamResults.lblUserAnswer11.Text, frmExamResults.lblUserAnswer12.Text,
                                             frmExamResults.lblUserAnswer13.Text, frmExamResults.lblUserAnswer14.Text,
                                             frmExamResults.lblUserAnswer15.Text, frmExamResults.lblUserAnswer16.Text,
                                             frmExamResults.lblUserAnswer17.Text, frmExamResults.lblUserAnswer18.Text,
                                             frmExamResults.lblUserAnswer19.Text, frmExamResults.lblUserAnswer20.Text}

    For intDisplayAnswers = 0 To 19
        aUserAnswersDisplayed(intDisplayAnswers) = aUserAnswers(intDisplayAnswers)
    Next

    frmExamResults.Show()

2 个答案:

答案 0 :(得分:0)

在FrmExamsResult中添加带参数的构造函数,并在对象构造函数中传递数组。另一种选择是在表单中定义属性。一旦实例化了对象,就可以在属性中设置数组。

另一种选择是使用存储数组的单例类。可以从两种形式访问单身人士。

问候

答案 1 :(得分:0)

假设您有两个名为Form1Form2的表单,并且您希望Form1上显示的内容来自Form2。这是您可以使用的方法

New()

上创建Form2方法
Dim _value1 as <DataType>,.......
Public Sub New(ByVal value1 as <DataType>,...........)
    `INITIALIZATION FUNCTION WILL CREATE AUTOMATICALLY`
    _value1 = value1
End Sub

现在在Form1上,在创建和使用Show()对象后调用ShowDialog()Form2方法。此方法将显示使用Form1方法创建的New()中定义的构造函数。传递所需的值,您将获得Form2上的值。

Dim a as Form1
a.ShowDialog(<Parameters here>)

希望这会有所帮助..