我正在進入事件處理階段,這對我來說似乎相當困惑。看,我來自網絡開發背景,所以這件事對我來說很新。激發自定義事件/一般事件處理
我在C#/ VS08中開發並在WinForm-Designer中創建了我的應用程序。
現在,我創建了這個程序概述;
ProgramContext
MainForm : Form
LoginForm : Form
所以,我想要做的是,當用戶點擊「註銷」(什麼是MainForm中的MainMenu的菜單項),該應用程序將註銷用戶。
但如何我可以訪問註銷項目的「Click」事件從ProgramContext的觀點,因爲在等
我想記錄的所有的邏輯如下
MenuItem[] findLogout = MainMenuStrip.Items.Find("logoutMenuItem", true); // Throws NullPointerException
findLogout[0].Click += new EventHandler(LogoutClick);
private void LogoutClick(object sender, EventArgs e)
{
// Logout user
}
但在第一行繼續收到NullPointerException。
因此,您在哪裏得到前ception? – ULysses 2010-07-23 14:30:53
示例'MenuItem [] findLogout ...'的第一行...' – 2010-07-23 14:32:47
您可以驗證MainMenuStrip在調用點不爲空,且MainMenuString.Items在調用點不爲空且findLogout不是空的陣列?沒有上下文,這些似乎是NULL引用代碼中最薄弱的部分。 – 2010-07-23 14:33:13