Datagridview显示日期或时间(VB.NET)

Datagridview显示日期或时间(VB.NET),vb.net,datagridview,Vb.net,Datagridview,我有一个datagridview,其中一些列最初指定为字符串,它们包含日期或时间,具体取决于一些业务逻辑 我正在更改列的类型(改为datetime)以允许正确排序。我想知道是否可以根据行显示日期值或时间值。否则,我将始终必须同时展示这两个方面 多谢各位 您可以处理CellFormatting事件。每次绘制单元格时都会触发此事件。您可以更改显示的值,而无需更改基础值和单元格格式 通过这样做,您可以根据行和列更改格式 Private Sub CellFormatting_EventHandler(s

我有一个datagridview,其中一些列最初指定为字符串,它们包含日期或时间,具体取决于一些业务逻辑

我正在更改列的类型(改为datetime)以允许正确排序。我想知道是否可以根据行显示日期值或时间值。否则,我将始终必须同时展示这两个方面


多谢各位

您可以处理
CellFormatting
事件。每次绘制单元格时都会触发此事件。您可以更改显示的值,而无需更改基础值和单元格格式

通过这样做,您可以根据行和列更改格式

Private Sub CellFormatting_EventHandler(sender As Object, e As DataGridViewCellFormattingEventArgs)
     If e.ColumnIndex = 2 AndAlso CType(sender, DataGridView)(5, e.RowIndex).Value.ToString = "Steve" Then 'Or whatever logic you like
         e.Value = CType(e.Value, Date).ToShortTimeString
     End If
 End Sub

取决于行还是列?@tezzo row,取决于列将更容易我要求确定,因为您谈论的是此列的正确排序。。。然后将仅日期值与仅时间值混合。但我不知道您的业务逻辑:如果是今天或类似的日子,您可能只显示时间值!;)