数据网格视图的多列排序:

问题描述 投票:0回答:2

我有一个 Windows 窗体中的 datagridview,包含 3 列:序列号、名称和日期时间。

“名称”列始终具有两个值之一:“name1”或“name2”。

我需要对这些列进行排序,以便网格以特定顺序显示具有名称值的所有行(首先显示所有“name1”行,然后显示所有“name2”行)。在“name1”行中,我希望这些行按日期时间排序。请注意,以编程方式,所有 3 列都是字符串。

例如,如果我有以下行:

01 |姓名1 | 2010-05-05 10:00 下午
02 |姓名2 | 2010-05-02 08:00 上午
03 |姓名2 | 2010-05-01 08:00 上午
04 |姓名1 | 2010-05-01 11:00 上午
05 |姓名1 | 2010-05-04 07:00

需要排序为

04 |姓名1 | 2010-05-01 11:00 上午
05 |姓名1 | 2010-05-04 07:00 上午
01 |姓名1 | 2010-05-05 10:00 下午
03 |姓名2 | 2010-05-01 08:00 上午
02 |姓名2 | 2010-05-02 08:00

我不知道如何使用以下内容:

    myGrid.Sort(.....,ListSortDirection.Ascending)
c# datagridview
2个回答
1
投票

将排序表达式定义为包含以逗号分隔的字段名称列表的字符串。看看这里的例子http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.gridview.sort.aspx


0
投票

您可以在数据视图结果集中的列上按以下方式累积排序:

Alt/Opt+Click

© www.soinside.com 2019 - 2024. All rights reserved.