2016-07-20 29 views
1

我有一個winform應用程序與2個窗體,我打電話從PasswordFormMainForm一個窗體。Winform後顯示執行事件C#

首先,我設置了構造

private MainForm mainForm = new MainForm(); 

我要讓形式

mainForm.Show(); 

但是,由於一些SQL查詢有關加載形式延遲2秒,即在表單加載事件上運行。

顯示mainForm後,有什麼辦法可以調用事件嗎? (具體我想淡出PasswordForm,這是我目前使用這個

FadeOut(this, 100); 

我試着從MainForm_Shown事件調用但還沒有找到指PasswordForm形式的一種方式?

private void MainForm_Shown(object sender, EventArgs e) 
    { 
     // THIS WILL FADE OUT THE 'MAINFORM' BUT I WANT TO FADE OUT THE 'PASSWORDFORM' 
     FadeOut(this, 100); 
    } 

編輯這兩種形式都使用相同的命名空間

+0

請按照以下步驟將1表單的引用傳遞給另一個:http://stackoverflow.com/a/38460510/3185569然後調用該表單的任何公共方法。 – user3185569

回答

-1

使用開放形式:

private void MainForm_Shown(object sender, EventArgs e) 
{ 
    dynamic frm = Application.OpenForms["mainForm"]; 
    frm.FadeOut(this, 100); 
}