【问题标题】:Modify how datetime is presented in a datagrid?修改日期时间在数据网格中的显示方式?
【发布时间】:2012-07-23 10:21:39
【问题描述】:

我正在查询 SQL CE 数据库以绑定数据源以供数据网格显示一些信息。

SQL CE 数据库中的一个列是 DateTime 列。在数据网格中,它显示完整的日期和时间,我希望它以这种格式显示日期:mm/dd/yyyy

我该怎么做?

【问题讨论】:

  • 您是否使用 linq to sql 进行查询,您也可以在将所有结果绑定到列表之前,然后修改日期的存储方式
  • 不,我只是在使用 SQL 表达式...
  • id 很高兴看到您的网格,但您可以在 asp 上的网格中格式化一行,就像 DataFormatString="{0:d}"

标签: c# sql datagrid windows-mobile compact-framework


【解决方案1】:

如果您知道哪一列有日期,您可以修改列的单元格样式属性:

System.Windows.Forms.DataGridViewCellStyle dgvCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
dgvCellStyle1.Format = "MM/dd/yyyy";
dgvCellStyle1.NullValue = null;
this.dataGridView1.Columns[0].DefaultCellStyle = dgvCellStyle1;

【讨论】:

    【解决方案2】:

    使用可以修改您的查询并使用转换功能以所需格式显示日期

    convert(varchar(10), datetimefieldname, 103) 
    

    可能会采用另一种方法,尽管我不太喜欢它

    cast(month(logindatetime) as varchar(2)) + '/' + cast(day(logindatetime) as varchar(2)) + '/' + cast(year(logindatetime) as varchar(4))
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-03-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-23
      • 2020-06-02
      • 2021-08-04
      相关资源
      最近更新 更多