在我之前的一个应用程序中,我需要动态地将控件添加到winforms项目中的flowlayoutpanel,但我需要它们在面板中没有更多空间时停止加载。
为实现这一目标,我写道:https://github.com/LucasMoffitt/WordFiller/blob/master/WordFiller.Controls/WordLayoutPanel.cs
如果入站控件触及我在面板底部绘制的矩形,这基本上只是将属性设置为false。
尝试在WPF中复制此行为时,我无法找到任何方法可以强制WrapPanel停止接收控件(如果已满)。
我试图覆盖排列和测量方法,但只有在添加了所有控件后才会调用它们。我需要能够阻止控件被加载。
有人有什么想法吗?
答案 0 :(得分:0)
您可以针对ActualHeight
/ AcxtualWidth
检查DesiredHeight
/ DesiredWidth
。当DesiredHeight
变得大于ActualHeight
时,小组开始重叠。
答案 1 :(得分:0)
所以我最终接受了一些建议并达成了这个:
https://github.com/LucasMoffitt/CustomWrapPanel
基本上我正在做的只是稍微整洁,并有一个演示应用程序。
如果有人找到更好的方法,我鼓励所有的贡献!