2

我有一个面板,我以编程方式向它添加控件。我希望每个控件都远离其他控件,而不是停留在它们之上。

为此,我可以根据Panel的大小计算每个控件的位置,但这似乎有点奇怪。

有没有办法让控件被添加到一行中,当它结束时它们被添加到另一行中?

4

3 回答 3

6

您可以使用 FlowLayoutPanel 来实现您所描述的内容。它位于工具箱中的容器下。将方向设置为水平,它将从左向右流动,并在需要时换行。

于 2013-03-07T19:43:36.437 回答
2

我相信WrapPanel类可以满足您在 WPF 中描述的功能。或者 WinForms 中的FlowLayoutPanel

于 2013-03-07T19:43:50.187 回答
1

你有几个选择。您可以使用其中一种容器,例如FlowLayoutPanelTableLayoutPanel。您也可以将它们嵌套在一起。您必须为Margin添加到容器中的每个控件设置属性。

遗憾的是Windows Forms技术在这方面稍有欠缺,而WPF有非常丰富的布局系统。即使是这样的事情Margin也并不总是按预期工作。

于 2013-03-07T20:01:17.567 回答