如何在 GridView 中以不同的方式显示日期?

Posted

技术标签:

【中文标题】如何在 GridView 中以不同的方式显示日期?【英文标题】:How to show date in diffrent way in GridView? 【发布时间】:2019-05-09 09:38:59 【问题描述】:

我想将我的grid 中的DisplayFormat 从

"MM/dd/yyyy"

"yyyy/MM/dd hh:mm:ss"

但什么也没发生。

【问题讨论】:

你能展示一下你是如何尝试的吗? 看到下面的帖子了吗? @Crowcoder 我正在使用 DevExpress Designer 的 GUI,用于 DevExpress.XtraEditor.XtraUserControl 并编辑 DisplayFormat 属性。 是的,我看到了答案,但问题不在于如何在控制台中显示日期,而在于如何在GridView 的 GUI 中显示。 网格绑定的底层源数据是什么样的?是强类型的DateTime 值还是字符串? 【参考方案1】:

你应该使用这个(例子):

static void Main()

    DateTime time = DateTime.Now;             // Use current time.
    string format = "yyyy/MM/dd hh:mm:ss";    // Use this format.
    Console.WriteLine(time.ToString(format)); // Write to console.

因此,当您在 GridView 中插入数据时,您会将其转换为具有所选格式的字符串。

这里是多个日期格式以及如何使用它们的链接:https://www.dotnetperls.com/datetime-format

【讨论】:

【参考方案2】:

对我来说,回答我的问题比在我的复杂程序中孤立的工作代码更容易。所以这是我在我的程序中运行的 hack:

private void GridView_CustomDrawEvent(object sender, RowCellCustomDrawEventArgs e)

    if(e.Column.FieldName == "CreationDate")
    
        string date = ((DateTime) view.GetRowCellValue(e.RowHandle, "CreationDate"));
        string displayDate = date.ToShortDateString() + " " time.ToLongTimeString();
        e.DisplayText = displayDate;
    

我在CustomDrawCell 事件中捕获了我的DateTime 对象,我正在使用DateTime.ToShortDateString() 和DateTime.ToLongTimeString(). 两种标准方法将其转换为字符串,非常感谢您抽出宝贵的时间。

【讨论】:

【参考方案3】:

Settings

设置显示格式

dd-MMM-yyyy hh:mm:ss tt

Result

【讨论】:

以上是关于如何在 GridView 中以不同的方式显示日期?的主要内容,如果未能解决你的问题,请参考以下文章

在 iOS 14 中以编程方式打开 UIDatePicker

VBA 在 Excel 2016 中以不同方式处理日期?有这方面的文件吗?

如何在 PHP 中以不同方式显示静态文本和动态文本(由变量生成)?

从数据库中提取数据时如何在 GridView 中仅显示日期? C#

如何在 DatePickerDialog 中以越南语显示月份和日期?

有啥方法可以在不同的行中显示 GridView 的列?