2010-11-24 27 views
1

我是.net.I中的新成員,需要幫助。 我有2個窗體一個窗體有邏輯,第二個窗體有登錄section.I想先運行第二個(登錄)窗體。我通過編寫代碼Application.Run(new Sign_in())來做到這一點;在第一種形式的構造函數。而我的第二種形式是首先出現,但當我點擊閉圖標(紅十字圖標)後,我剛剛關閉登錄表單我的第一個邏輯數據表單正在load.I不想加載我的第一個表單在任何條件下登錄。 我該怎麼辦? 謝謝C#中的封閉式檢測.net

回答

0

代替撥打LoginForm.Close(),請致電LogicForm.Show(),然後LoginForm.Hide()

2

在窗體的構造函數中運行窗體通常會嚴重結束。我想分離這些出,即在Main()方法

bool loggedIn = false; 
using(var loginForm = new SignInForm()) { 
    if(loginForm.ShowDialog() == DialogResult.OK) { 
     loggedIn = true; // plus whatever else you need; maybe a "Principal" 
    } 
} 
if(loggedIn) { 
    using(var mainForm = new SomeOtherForm()) { 
     Application.Run(mainForm); 
    } 
} 

也將改變登錄表單設置適當的DialogResult