2016-12-24 96 views
0

我有兩個win窗體frmMain和frmMemberSearch,在frmMemberSearch中有一個按鈕將運行一個函數並執行下面的代碼。如何捕捉窗體公開事件

frmMain main = new frmMain(true, search_content, member_id); 
main = (frmMain)Application.OpenForms["frmMain"]; 

這將切換回frmMain,以及如何捕捉到這個事件,我用了顯示,但它不工作「OpenForms」:

//constructor 
public bool isDisplay = false; 
public frmMain(bool isDisplay, string searchContent="", int member_id=0, int unit_id = 0) { 
      InitializeComponent(); 
      Shown += frmMain_Shown; 
} 

private void frmMain_Shown(Object sender, EventArgs e) { 
    if (this.isDisplay == true) { 
     Messagebox.show("hello"); 
    } 
} 

我應該使用什麼事件追蹤事件?

回答

0

您必須顯示錶單才能觸發事件frmMain_Shown。 嘗試以下

frmMain main = new frmMain(true, search_content, member_id); 
main = (frmMain)Application.OpenForms["frmMain"]; 
main.ShowDialog(); 

使用ShowDialogShow方法按您的要求。