确定foreach中的顺序(pnl中的面板p)

本文关键字:foreach 顺序 确定 pnl | 更新日期: 2023-09-27 18:10:27

我有一个名为pnl的面板,里面有更多的面板,称它们为p。现在用户可以为每个面板p选择一种颜色。

然后我想确定面板pnl中每个面板p的颜色。

我使用了一个foreach循环,看起来像foreach(pnl中的Panel p)。然而,我需要知道每个面板的颜色从左到右存储在一个int-array。foreach-loop似乎总是以相同的顺序查看面板p,但是我想知道在哪里可以设置这个顺序。

是按名字吗?(我找不到合适的方法来命名它们)。或者其他什么?我如何更改订单?

我希望我的问题是清楚的,期待答案

提前感谢您

确定foreach中的顺序(pnl中的面板p)

您必须尝试按从左到右的顺序进行枚举:

foreach (Panel p in pnl.Controls.OfType<Panel>().OrderBy(x => x.Left)) {
  // do something with p
}