You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C# Grid控件日期列仅显示两位年份,如何设置为四位?

解决C# Grid控件日期显示四位年份的方法

嘿,这个问题我熟得很!其实核心就是指定正确的日期格式化字符串——把原来的yy换成yyyy就行,具体操作要看你用的是哪种Grid控件,我给你列几种最常见的场景:

WinForms DataGridView

  • 设计时操作:右键你的DataGridView,选择「编辑列」,找到目标日期列,在「DefaultCellStyle」的「Format」属性里输入你想要的格式,比如yyyy-MM-dd或者yyyy/MM/dd,确定后就能看到效果。
  • 代码设置:如果是后台动态生成列,直接给列的DefaultCellStyle.Format赋值就行:
    // 假设你的日期列是dateColumn
    dateColumn.DefaultCellStyle.Format = "yyyy-MM-dd";
    

WPF DataGrid

  • XAML设置:在列的绑定里加上StringFormat参数,示例如下:
    <DataGridTextColumn Header="日期" 
                        Binding="{Binding YourDateProperty, StringFormat=yyyy-MM-dd}" />
    
  • 后台代码设置:动态创建列时可以这么写:
    var dateColumn = new DataGridTextColumn();
    dateColumn.Header = "日期";
    dateColumn.Binding = new Binding("YourDateProperty") 
    { 
        StringFormat = "yyyy-MM-dd" 
    };
    yourDataGrid.Columns.Add(dateColumn);
    

ASP.NET GridView

  • 在BoundField里设置DataFormatString,记得把HtmlEncode设为False,不然格式不会生效:
    <asp:BoundField DataField="YourDateField" 
                    HeaderText="日期" 
                    DataFormatString="{0:yyyy-MM-dd}" 
                    HtmlEncode="False" />
    

本质上不管哪种控件,只要把日期格式字符串里的两位年份标识yy替换成四位的yyyy,就能显示完整的年份了。如果是自定义的Grid控件,找一下对应列的「格式化」或「格式字符串」属性,照这个逻辑设置就行。

内容的提问来源于stack exchange,提问作者Korpin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 06:59:55