好吧,這就是我正在嘗試做的事情。 我有一個C#桌面應用程序中的主窗體,其中我有一個menuStrip和splitContainer。 在運行應用程序時,我在隱藏menuStrip時將名爲'Login'的UserControl加載到splitContainer.Panel2。 Login控件包含用戶名,密碼和一個按鈕來登錄領域。使用UserControl登錄,然後啓用主菜單中的menuStrip
http://i.stack.imgur.com/5jcnK.png
一旦經過認證(按鈕的點擊)我想啓用的MenuStrip,並允許在splitContainer.Panel2其他用戶控件,同時隱藏Login控件。
http://i.stack.imgur.com/lwLvP.png
如何我做到這一點?我試圖從登錄控制啓動一個事件,並以某種方式使其以主要形式工作,但無法實現。 這種方法甚至值得嘗試,或者我應該單獨打開多個表單(我討厭這麼做!) 關於如何更改splitContainer.Panel2中視圖的任何更清晰的方法(除了將面板疊置在另一個上方之外,這將是爲我設計的噩夢),同時保持splitContainer.Panel1具有相同的內容。
事件將是完美的。表單將訂閱UserControl事件,然後適當地切換控件。使用事件方法有什麼困難? –
@Idle_Mind感謝您的建議。 IDK,事件不起作用。也許我做得不對,因爲我提到了一些教程。 在登錄控件類中我聲明: public delegate void EventHandler(Object sender,EventArgs e); 公共事件EventHandler已認證; 在登錄按鈕點擊: 如果用戶通過數據庫認證我做: 1.認證(這,新的System.EventArgs()); 或 2. this.Authenticated(this,e);我想要做: Login.EventHandler = new EventHandler Flummoxed,因爲它應該按照教程工作。 – Abhi