【问题标题】:How to show only date rather than datetime in data grid view如何在数据网格视图中仅显示日期而不是日期时间
【发布时间】:2019-03-10 14:58:03
【问题描述】:

所以,我有这个绑定源:

 List<archive> list = _context.archive.Include(t => t.partner1).Include(t => t.partner).Include(t => t.document_type).ToList();

 list = list.OrderBy(d => d.issuing_date).ToList();
 BindingList<archive> bindingList = new BindingList<archive>(list);

this._view.ArchivekDatasource.DataSource = bindingList;
this._view.DocumentTypeDatasource.DataSource = _context.document_type.Local.ToBindingList();
this._view.PartnerDatasource.DataSource = _context.partner.Local.ToBindingList();

因此,存档有两个字段,在数据库中表示为日期时间。但我只想在数据网格视图中显示它们作为日期......我该怎么做?

我知道有truncate_time 函数,但我不知道如何使用它来创建我想要的绑定源。

【问题讨论】:

  • 我相信这已经回答了here
  • @s.m.不知何故,它没有用。我尝试在设置实际数据源之前设置它。
  • 如果您事先定义了列,请使用DateTime 类型的CellTemplate.ValueType.Style = new DefaultCellStyle() { Format = "MM/dd/yyyy"}。如果没有,绑定列表后,dataGridView1.Columns[&lt;SomeColumn&gt;].CellTemplate.ValueType = typeof(DateTime);dataGridView1.Columns[&lt;SomeColumn&gt;].DefaultCellStyle.Format = "MM/dd/yyyy";

标签: c# winforms entity-framework-6 datasource bindingsource


【解决方案1】:

使用这个:

list = list.OrderBy(d => String.Format("{0:MM dd YYYY}", d.issuing_date)).ToList();

也许能帮上忙。

【讨论】:

  • 我所做的是`list = list.OrderBy(d => String.Format("{0:mm:dd:yyyy}", d.issuing_date)).ToList();` 和没有变化。我只将您的示例中的单引号更改为双引号。
猜你喜欢
  • 2011-08-29
  • 2015-11-14
  • 2021-07-24
  • 1970-01-01
  • 1970-01-01
  • 2011-08-14
  • 2022-12-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多