自定义字符串格式,数字到时间

时间:2014-03-07 11:00:14

标签: c# .net datagridview string-formatting number-formatting

我想将数字转换为时间,例如

10  ->  00:10  
55  ->  00:55  
75  ->  01:15  
90  ->  01:30  
705 ->  11:45 

等等。我知道我可以编写一个方法并执行此转换,但我需要DataGridView,所以我最好使用字符串Format

据我所知,没有实施这样的事情。我如何实现这种格式,以便我可以在网格DefaultCellStyle.Format上设置它?

1 个答案:

答案 0 :(得分:5)

您可以先从会议记录创建TimeSpan

TimeSpan minutes = TimeSpan.FromMinutes(705);

然后使用DateTime.Add

DateTime dt = DateTime.Today.Add( minutes );

现在您可以使用DateTime.ToString

string text = dt.ToString("HH:mm");

您也可以使用TimeSpan.ToString(虽然DateTime.ToString更具可读性):

text = minutes.ToString(@"hh\:mm")

您可以使用DataGridViews CellFormatting事件。

How to: Customize Data Formatting in the Windows Forms DataGridView Control