(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();
我是否正确传递了数组?
答案 0 :(得分: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();
请记住,您还需要初始化锯齿状数组的第二部分 - 或者在尝试访问它时会抛出空引用异常。
答案 1 :(得分:0)
你实际上有几个选项,你可以在构造函数中实际传递数组,只要你已经将它添加到resultsForm的构造函数中。另一种选择是让数组public static
然后通过使用主表单的名称限定它来从resultsForm访问它。