16

我有一个FlowLayoutPanel和几个UserControls。现在我希望一个控件始终位于我的FlowLayoutPanel. 所以我想在最低控制上方添加我的 UserControl。有没有一种简单的方法可以在 中插入用户控件FlowLayoutPanel

我目前正在考虑移除底部的控件,并添加我要添加的控件并再次添加底部控件。但这我不认为这真的是最好的方法。这里有没有人可以帮助我提供一些有关如何执行此操作的信息?

4

2 回答 2

13

是的,IndexControl可以User-ControlFlow-Layout Panel.

//flPanel is your flow-layout panel...
flPanel.Contorls.Add(ctrl1); //ctrl1 can be any control or user control
flPanel.Contorls.Add(ctrl2); //ctrl2 can be any control or user control
flPanel.Controls.SetChildIndex(ctrl1, flPanel.Controls.GetChildIndex(ctrl2) + 1);

这样,您的 ctrl1 将位于底部,尽管它首先添加到您的Flow-Layout Panel.

如果您有更多Control的 s,并且您在不同的事件中切换它们的可见性,那么您每次都必须Index为每个设置Control

我建议将您Control放入Panel并添加Panel到您的Flow-Layout Panel.

于 2012-11-07T12:04:45.957 回答
0

这与 WinForms/WPF 无关。您正在尝试使用面板进行流式布局,而这显然不是要使用流式的。

您应该相应地更改布局面板。尝试在需要流程的项目上使用流程布局,然后将该面板放在另一个面板中,该面板也托管您的底部面板。

于 2012-11-07T10:11:02.537 回答