class Puzzle
{
private int PUZZLESIZE = 3;
private int col, row;
private Button[,] buttons;
public Puzzle()
{
}
public Puzzle(Form1 form1)
{
buttons = new Button[3, 3]
{ { form1.button1, form1.button2, form1.button3 },
{ form1.button4, form1.button5, form1.button6 },
{ form1.button7, form1.button8, form1.button9 } };
}
public void reset()
{
for (int i = 0; i < 3; i++)
for (int j = 0; j < 3; j++)
{
buttons[i, j].BackColor = Color.Lime;
}
}
buttons[i, j].BackColor = Color.Lime;
的NullReferenceException爲按鈕陣列
此行導致NullReferenceException
當我打電話在Form1.cs復位方法。任何建議表示讚賞!
儘管按鈕屬性在窗體上可用,但它們可能尚未實例化,因此將爲空。這取決於您何時嘗試訪問它們。標準的WinForms行爲是在InitializeComponent中創建所有的控件,儘管這不是一成不變的。 –
你確定你的代碼路徑沒有使用默認的構造函數,它不綁定按鈕? – jv42
我會從刪除空的構造函數開始... – jv42