从一种形式获取数组并在另一种形式的标签中显示内容

Take array from one form and display contents in labels on another form

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

代码:

'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()

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

另一种选择是在存储数组的位置使用单例 class。可以从两种形式访问单身。

你好

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

Form2

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

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

上获得您的值
Dim a as Form1
a.ShowDialog(<Parameters here>)

希望这对您有所帮助..