C# 在运行时添加选项卡页时为Null Ref

C# 在运行时添加选项卡页时为Null Ref,c#,winforms,C#,Winforms,这是我编写的示例代码,用于在运行时添加一些带有控件的选项卡页面。但是当我运行它时,我会得到一个Null Ref异常错误。 我做错了什么 TabPage[] tabPages = new TabPage[2]; CheckBox ck = new CheckBox(); tabPages[0].BackColor = Color.Firebrick; tabPages[0].Controls.Add(ck); tabPages[1].BackColor = Color.Firebrick; tab

这是我编写的示例代码,用于在运行时添加一些带有控件的选项卡页面。但是当我运行它时,我会得到一个Null Ref异常错误。 我做错了什么

TabPage[] tabPages = new TabPage[2];
CheckBox ck = new CheckBox();
tabPages[0].BackColor = Color.Firebrick;
tabPages[0].Controls.Add(ck);
tabPages[1].BackColor = Color.Firebrick;
tabPages[1].Controls.Add(ck);
tabGuy.SuspendLayout();
tabGuy.TabPages.Add(tabPages[0]);
tabGuy.TabPages.Add(tabPages[1]);
tabGuy.ResumeLayout(); 

在任何分配之前,您缺少
tabPages[0]=new tabPages()
tabPages[1]=new tabPages()
。创建一个数组会将它的每个元素分配给它的默认值,对于任何引用类型,都是
null

我觉得你只是在创建一个新的TabPage数组,我建议你试试

tabPages[0] = new TabPage();
如果这是一个已编译的应用程序,您可以在调试器中运行它,您应该能够准确地看到哪一行抛出异常。在这种情况下,我希望它位于以下位置:

tabPages[0].BackColor = Color.FireBrick;

两个答案基本相同,同时提交,但你的分数较少,所以我给你投票:)