2013-03-21 39 views
1

我在窗体上有两个面板。我想要其中的一个,当用户最大化表单时,面板也要最大化,具体取决于表单。我试过了,面板显示在整个表格上,隐藏了另一个面板。 这里是我的代码:窗体上的自动调整大小面板

public MainForm() 
{ 
    InitializeComponent(); 

    panel2.Anchor = (AnchorStyles.Bottom | AnchorStyles.Right); 
    panel2.Dock = DockStyle.Fill; 
    TaskControl t = new TaskControl(); 
    int x, y; 
    x = 0; 
    y = 0; 
    t.Location = new Point(x, y); 
    panel2.Controls.Add(t); 
    t.BringToFront(); 

} 

我设法做到这一点。我从属性中更改了Anchor的值。谢谢你的帮助!

+2

您可以重新提出问题吗?这是不是很清楚你试图达到什么... – 2013-03-21 12:57:33

+1

如果我已经明白了这个问题,接受的答案是错误的。如果你是两个面板,一个调整大小,一个不调整大小,正确的做法是使用预先存在的控制(splitcontainer,根据我的答案)来做到这一点。这是在那里,它已经过测试,它只是起作用。如果您想要一些附加功能,或者拆分容器不适合,请更新您的文章或回复我的答案,以解释您想要实现的目标! – 2013-03-21 22:46:51

回答

1

你不应该只在初始化时,而是在Form_Resize事件等。例如, 你可以处理Form.ResizeEnd事件,请参阅参考here

4

这听起来像是你想要一个splitcontainer。有了这个控制,你会得到两个面板。将“fixedpanel”属性设置为您不想调整大小的面板。另一个面板将调整大小,因为表单被调整大小(或最大化)

相关问题