我想在加載事件中初始化我的數組(這是一個類的數組)的元素,但它沒有被調用,看不到我是什麼做錯了。加載事件似乎並沒有被調用
這是我的代碼:
namespace Coffee_Shop_Login
{
public partial class frmLogin : Form
{
public frmLogin()
{
InitializeComponent();
}
//Global Variables
static int Maximum_Number_Of_Logins = 1;
LoginDetails[] Employees = new LoginDetails[Maximum_Number_Of_Logins];//creating array of objects of type LoginDetails
//method initialises the array objects when form loads
private void frmLogin_Load(object sender, EventArgs e)
{
for (int i = 0; i < Employees.Length; i++)
{
Employees[i] = new LoginDetails(); // set up single element to a new instance of the object
}
}//end of frmLogin_Load()
private void btnLogin_Click(object sender, EventArgs e)
{
string username = "Johnny";
Employees[0].Set_Employee_Username(username);
MessageBox.Show("Username is: " + Employees[0].Get_Employee_Username());
}
}
}
namespace Coffee_Shop_Login
{
class LoginDetails
{
//Public Mutator Functions
//========================
public void Set_Employee_Username(string username)
{
Employee_Username = username;//sets Employee_Username with value passed in
}//end of Set_Employee_Username()
public void Set_Employee_Password(string password)
{
Employee_Password = password;//sets Employee_Password with value passed in
}//end of Set_Employee_Password()
//Public Accessor Functions
//=========================
public string Get_Employee_Username()
{
return Employee_Username;//returns the value of Employee_Username
}//end of Get_Employee_Username()
public string Get_Employee_Password()
{
return Employee_Password;//returns the value of Employee_Password
}//end of Get_Employee_Password()
//Private Member Variables
private string Employee_Username;
private string Employee_Password;
}
}
當我運行應用程序,我收到此錯誤信息,由於沒有被調用加載事件:
類型的未處理的異常「System.NullReferenceException '發生在咖啡店Login.exe
附加信息:未將對象引用設置爲對象的實例。
我需要添加什麼來使Load事件調用我的方法?
你能告訴我哪行,你所得到的錯誤?除了使用C#編寫類似Java代碼的糟糕風格之外,我沒有找到任何理由說明爲什麼您的代碼無法正常工作,因爲它對我來說運行良好。錯誤可能在其他地方。有了這個說法,認真考慮首先學習C#及其基礎知識,像屬性和相關約定。 –
我只能看到的是'frmLogin_Load'方法沒有在事件中註冊,它在點擊按鈕 –
Alexandre時創建了一個NRE,我同意問題出在我的加載事件上,但我相信我遵循了正確的格式和正確的名稱,所以不明白爲什麼它不會運行。 – user3478049