我正在尝试用C#设计一个UI。我有Java背景,熟悉Java中不同的布局管理器。
所以我想做的是:
我有一个窗格。我希望将控件一个接一个地添加到此窗格中。在Java中,我会使用BoxLayout(Y轴),然后添加控件。此外,可以通过对每个单独的容器使用不同的布局来进一步定制单独的控件/容器。
我如何在C#中做到这一点?
我需要做的是:
1) 将控件一个接一个地添加。每个单独的控件可以是较小控件的集合。
所以我可以拥有这样的东西:
Control 1 here
Control 2 here
Control 3 here
每个控件都可以有自己的布局,比如X轴上的BoxLayout等等。我该如何做到这一切?
附言:我正在使用WINFORMS。
我将尝试一下您正在构建WinForms,并建议您查看以下控件,这些控件类似于Java布局管理器;
- 面板
- 流程布局面板
- 表格布局面板
Panel将允许您在其中任意放置控件,并使用Dock、Anchor和Location属性来定位每个子控件。
如果您将流设置为"TopDown",FlowLayoutPanel将执行您的要求,但所有内容都将保持对齐,我相信这是无法更改的。
TableLayoutPanel将是我所期望的对您最有用的。只需创建一个包含1列的面板,并将每个控件添加到一行即可。行可以根据其内容设置为AutoSize,以使您与BoxLayout最匹配。