-4

(C# 新手)我正在 C# 中创建一个锯齿状数组表单,如下所示,然后将其传递给表单 2:

          // Answers jagged array that is declared in form 1
         private Question[][] _answers;                 

以下代码是我用来创建第二种形式并将数组传递给它的代码:

        //Code to pass all elements of array to new array in form 2 
        Question[][] DisplayAnswers = new Question[1][];

        //Code for new form2
        ResultsForm resultsForm = new ResultsForm();

        //Code for dialog results from form 2  
        DialogResult dialogResult = resultsForm.ShowDialog();

我是否正确传递了数组?

4

2 回答 2

1

我想你的意思是这样做

    //Code to pass all elements of array to new array in form 2 
    Question[][] DisplayAnswers = new Question[1][];

    //Code for new form2
    ResultsForm resultsForm = new ResultsForm(DisplayAnswers);

    //Code for dialog results from form 2  
    DialogResult dialogResult = resultsForm.ShowDialog();

请记住,您还需要初始化锯齿状数组的第二部分 - 否则它会在尝试访问它时抛出空引用异常。

于 2013-08-04T17:15:30.547 回答
0

您实际上有几个选项,您实际上可以在构造函数中传递数组,前提是您已将其添加到 resultsForm 上的构造函数中。另一种选择是使数组public static然后通过使用主窗体的名称限定它从 resultsForm 访问它。

于 2013-08-04T17:19:04.640 回答