在FlowLayoutPanel中查找中断流的控件

本文关键字:控件 中断 查找 FlowLayoutPanel | 更新日期: 2023-09-27 18:26:50

当向FlowLayoutPanel添加一些控件时,有没有办法找到哪些控件会导致新行中的流中断?

for(i=0;i!=100;i++){
  var userControl = new MyUserControl();
  myFlowLayoutPanel.Controls.Add(userControl);
} 

这100个userControls排列在20行5列中,因此第1、第5、第15、…、。。,第100个用户控件导致CCD_ 3在新行中中断。我正在寻找一种检测这些控件的方法。

在FlowLayoutPanel中查找中断流的控件

不幸的是,没有任何方法或属性可以为您提供这些信息,但您可以手动计算:

Control prevControl = null;
foreach (Control control in myFlowLayoutPanel.Controls)
{
     if (prevControl == null || prevControl.Left > control.Left)
     {          
          // line break
     }
     prevControl = control;
}