【发布时间】:2015-09-04 19:20:56
【问题描述】:
我刚才问过类似的问题,但它是针对 linq 的。我有一个列表,linq 用于根据 3 列对记录进行分组。我已将列表绑定到 DataGridView 并根据需要显示记录。
原来的记录是这样的,
var list = new List<Users>()
{
new Users() { FirstName = "A1", LastName= "A2", MiddleName = "A3" },
new Users() { FirstName = "B1", LastName= "A2", MiddleName = "B3" },
new Users() { FirstName = "C1", LastName= "C2", MiddleName = "C3" },
new Users() { FirstName = "A1", LastName= "A2", MiddleName = "A3" },
new Users() { FirstName = "D1", LastName= "C2", MiddleName = "A3" },
new Users() { FirstName = "A1", LastName= "A2", MiddleName = "B3" },
new Users() { FirstName = "B1", LastName= "B2", MiddleName = "A3" },
};
应用 linq 后,
var sorted = list.OrderBy(l => l.FirstName).ThenBy(l => l.LastName).ThenBy(l => l.MiddleName).ToList();
记录按 FirstName、LastName 和 MiddleName 排序。所以所有行都是相似行的组。我希望我已经很好地解释了这一点。
现在我想使用 Winform DataGridView 的交替行颜色,但用于相似行而不是交替行。
这里问了一个类似的问题, How can we format group of data in DataGridView of Winform
但这是基于一列的分组。但我没有使用 group by,而是根据相似的值将行分类为组。我怎样才能做到这一点?
【问题讨论】:
-
您想分别为具有相同
FirstName、MiddleName和LastName的行着色吗? -
@X-TECH 是的,这正是我想要的。
标签: c# winforms datagridview