2013-02-06 34 views
0

我的设计是这样的:我有一些面板,比如Panel1,Panel2,Panel3,...我的主窗口由两个或多个面板组成,例如Window1由Panel1和Panel2组成,Window2由Panel3和Panel2组成,......它们都是一个在另一个之下,它可能发生,我必须添加或从面板中删除的东西,以便它增长或缩小。我必须使用TableLayout来保持它们的对齐吗?还是有一个选项告诉我的Panel1它应该是Panel2结束的位置?放置可能会自动调整大小的面板

更新:我忘了提及我正在开发桌面应用程序。当研究TableLayoutPanel和GridLayoutPanel时,我读到了这一点。

回答

1

没有选择告诉Panel2在panel1结束的位置开始。但是,“必须使用TableLayout”也是不正确的。例如,您可以使用手动重新定位或流布局面板。另一方面,从您的简要说明中,听起来像一个流程布局面板可能比桌面布局控制更适合这里的帐单。

+0

我同意。这听起来像一个包含自动调整面板的流程布局。 – JosephHirn

+0

感谢您的想法,我只是简单看了一下FlowLayout,只要有空间,它似乎把面板放在一排,对吧?但是我希望我的面板能够低于彼此,不管右侧有多少空间。 TableLayout的行不要根据内容自动调整大小? –

+0

FlowLayoutPanel有两个属性可以帮助你:'.FlowDirection'(所以你可以把它流下来而不是跨越)和'.WrapContents'(尽管你可能不需要这个)。还有其他有趣的属性,如项目之间的空间等。请参阅http://msdn.microsoft.com/en-us/library/system.windows.forms.flowlayoutpanel.aspx所有的属性和方法。 – U1199880