如何从左到右,然后从上到下对列表进行排序

本文关键字:列表 排序 从上到下 从左到右 然后 | 更新日期: 2023-09-27 17:58:24

我在一个列表中收集了一些坐标(x,y),需要从左到右,按读取顺序自上而下进行排序。所附图片显示了我的目标。

我原以为下面的会起作用,但它没有正确地排序。感谢您的帮助。谢谢

mypointlist = mypointlist.OrderByDescending(pnt => pnt.X).ThenBy(pnt => pnt.Y).ToList();  

示例图像

如何从左到右,然后从上到下对列表进行排序

您需要按Y升序(从上到下),然后按X升序(从左到右排列具有相同Y的点)对它们进行排序:

mypointlist = mypointlist.OrderBy(pnt => pnt.Y).ThenBy(pnt => pnt.X).ToList();

这似乎在我的特定情况下起到了作用,但我不确定它是否是充分的证据:

mypointlist = mypointlist.OrderByDescending(pnt => pnt.Y).ThenBy(pnt => pnt.X).ToList();