2012-02-04 63 views
2

我想使用用戶控件加載表單中的多個表單,並且我嘗試了下面的代碼,但點擊button1後似乎沒有發生任何事情。任何人都知道什麼是錯的?使用多種形式

public partial class Form1 : Form 
{ 
    public Form1() 
    { 
     InitializeComponent(); 
    } 

    private void button1_Click(object sender, EventArgs e) 
    { 
     UserControl1 control = new UserControl1(); 
     control.Dock = DockStyle.Fill; 
     this.Controls.Add(control); 
    } 
} 
+0

你的form1上還有其他控件嗎? – Hans 2012-02-04 12:55:10

+0

沒有其他控件 – aurelio 2012-02-04 13:05:52

+1

確保點擊按鈕的單擊事件已連線以運行該代碼。 – LarsTech 2012-02-04 13:21:05

回答

2

不過的UserControl1的內容似乎是重疊的,我仍然可以看到Form1中

的形式事宜控件的Z順序的內容。使用Controls.Add(),控件在訂單的底部結束,現有控件與其重疊。你這樣修復:

this.Controls.Add(control); 
    control.BringToFront(); 

或者使用Controls.SetChildIndex()在控件之間插入它。

0

可能您需要更改Dock屬性的值。當它是DockStyle.Fill - 它只會佔用整個區域。嘗試將其更改爲其他值,具體取決於您需要的佈局。