匿名使用者
匿名使用者 發問時間: 電腦與網際網路程式設計 · 8 年前

c#宣告Lable陣列出現錯誤

public partial class Form1 : Form

{

Label[] labAry = new Label[] { label1, label2, label3, label4};

public Form1()

{

InitializeComponent();

}

}

}

以上程式碼會出現錯誤:’’欄位初始設定式無法參考非靜態欄位、方法或屬性 ’’

如果把陣列宣告在事件裡就可以正常執行,上網查了似乎跟static有關,但還是不明白為什麼?我要說明讓我能夠理解~如果陣列要宣告在public partial class Form1 : Form底下該怎麼寫?

1 個解答

評分
  • 8 年前
    最佳解答

    public partial class Form1 : Form

    {

    private readonly Label[] labAry;

    public Form1()

    {

    InitializeComponent();

    //這四個 label 的宣告生成,

    //應該是在 InitializeComponent() 裡面,

    //所以初始化陣列應拉到此處才能生效

    labAry = new Label[] { label1, label2, label3, label4};

    }

    }

    }

還有問題?馬上發問,尋求解答。