gpt4 book ai didi

c# - 在 DataGridView 中对日期进行排序

转载 作者:行者123 更新时间:2023-11-30 13:30:41 27 4
gpt4 key购买 nike

我正在使用 sqlDataReader 从 SQL 表中提取不同的信息。其中一列包含 DateTime,从 sql 中提取并正确显示,使用:

var datestring = reader.GetDateTime(reader.GetOrdinal("deadline")).ToShortDateString();

它以下列格式显示在 DataGridView 中:dd.MM.yyyy

当我尝试对其进行排序时,无论 MMyyyy 信息是什么,它都会在 dd 之后进行排序。

使用以下命令将日期字符串放入数据 GridView 中:

dgv_tasks.Rows.Add(tid, taskname, sidvariable, datestring);

任何人都知道为什么它根本不按日期排序,只按 dd 中的数字排序?

(我在这里寻找答案,但类似的问题都没有有效的答案)。

最佳答案

您想在 DataGridView 中将其保留为 DateTime,而不是将其转换为字符串。这就是为什么它按字母顺序而不是按日期排序的原因。

删除 .ToShortDateString() 并将您的 DataGridViewColumn 定义为 DateTime 类型(假设您手动创建列)。

将数据分配给 DataGridView 后,只需修改该列的 DefaultCellStyle.Format 值即可以您选择的任何方式显示日期:

dgv_tasks.Columns["deadline"].DefaultCellStyle.Format = "dd.MM.yyyy";

关于c# - 在 DataGridView 中对日期进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29774271/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com