C# 对datagrid列进行排序。对象列表c

C# 对datagrid列进行排序。对象列表c,c#,winforms,list,datagrid,C#,Winforms,List,Datagrid,我有一个分配给datagrid的学生列表。每个学生都有身份证、姓和名。 我需要允许用户从id或姓氏排序顺序中进行选择。我知道它很可能会通过。排序,但我不知道如何将它与姓氏或ID联系起来 students = new List<Student>(); students = new List<Student>(); students.Add(new Student() { GroupID = "Alpha", StFName = "Name", StLName = "Sur

我有一个分配给datagrid的学生列表。每个学生都有身份证、姓和名。 我需要允许用户从id或姓氏排序顺序中进行选择。我知道它很可能会通过。排序,但我不知道如何将它与姓氏或ID联系起来

students = new List<Student>();

students = new List<Student>();
students.Add(new Student() { GroupID = "Alpha", StFName = "Name", StLName = "Surname"});
students.Add(new Student() { GroupID = "Beta", StFName = "Foo", StLName = "Surname"});
students.Add(new Student() { GroupID = "Beta", StFName = "Bar", StLName = "Surname"});
students.Add(new Student() { GroupID = "Gamma", StFName = "Baz", StLName = "Surname"});
谢谢:

students.OrderBy(x=>x.GroupID);
降序

students.OrderByDescending(x=>x.GroupID);
结合

students.OrderBy(x=>x.GroupID).ThenBy(x=>x.StLName);

这不是很直截了当。也许您在这个问题中添加了一个Windows窗体标记,以便从对Windows窗体有更多经验的人那里获得更多的回答。但是,您仍然可以给用户选择排序字段的选项,通过一个UI元素,如DropDownList或ComboBox…我甚至不知道Windows窗体中的控件名是什么。然后,根据用户选择,可以在c中进行切换,按照排序选项中指定的字段对列表数据源进行排序

让我知道它是否被清除足够,如果你需要一个代码片段


Leo

我们在谈论什么样的应用程序?Win Forms、Web Forms?但我如何将其与datagrid绑定?