2013-02-07 33 views
1
public static object loadForm(Form formToLoad, TabControl homeTabControl) 
{ 
    //Check if formToLoad parameter is NULL 
    if (formToLoad == null) throw new ArgumentNullException("formToLoad"); 

    //get the parent/ownining form 
    Form form1 = new Form1(); 

    //set formToLoad properties 
    formToLoad = new Form 
    { 
     Owner = form1, 
     FormBorderStyle = FormBorderStyle.None, 
     TopLevel = false, 
     Dock = DockStyle.Fill 
    }; 

    //add formToLoad to tabControl tabPage 
    homeTabControl.TabPages["tabPageHome"].Controls.Add(formToLoad); 
    formToLoad.Show(); 

    return formToLoad; 
} 

當我從按鈕點擊調用我的代碼時,formController頁面如何在tabControl頁面中不顯示?form.Show在功能無法正常工作時調用

private void button3_Click(object sender, EventArgs e) 
{ 
    LeaveMainForm lM = new LeaveMainForm(); 
    AppCode.FormLoader.loadForm(lM, homeTabControl); 
} 

回答

2

您在書寫你試圖用一個新的Form實例加載實際的形式,在這一行:

formToLoad = new Form 

試試這個:

//set formToLoad properties 
formToLoad.Owner = form1; 
formToLoad.FormBorderStyle = FormBorderStyle.None; 
formToLoad.TopLevel = false; 
formToLoad.Dock = DockStyle.Fill;