2010-05-28 20 views
0

這是我編寫的示例代碼,用於在運行時添加一些帶有控件的標籤頁。但是當我運行它時,會出現Null Ref異常錯誤。 我做錯了什麼部分?在運行時添加TabPages時爲空參考

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

回答

4

你錯過任何轉讓之前tabPages[0] = new TabPage()tabPages[1] = new TabPage()。創建一個數組將其每個元素都分配給其默認值,即任何引用類型都是null

3

在我看來,你只是創建的TabPage的新陣,我會建議嘗試

tabPages[0] = new TabPage(); 

如果這是一個編譯的應用程序,你可以在調試器中運行這個,你應該能夠確切地看到哪一行拋出異常。在這種情況下,我會想到它是在該行:

tabPages[0].BackColor = Color.FireBrick; 
+0

兩個答案這基本上是相同的,在同一時間提交,但你有較少的點,所以我給你的贊成票: ) – ckramer 2010-05-28 23:37:44