如何显示此[h]:mm:ss格式的时间?

时间:2018-09-04 09:42:22

标签: c# wpf

我们的Time-Span值如下所示。而且我想在C#中使用[h]:mm:ss(与Excel格式相同)显示此跨度值。

代码

var timeSpan = new TimeSpan(45, 15, 15);

我希望这个时间跨度会根据所提供的格式而改变。

如果我给此格式h:mm:ss,它将显示为21:15:15。

如果我使用[h]:mm:ss格式,它将显示为45:15:15。

如果我给出@格式,它将显示为1,885590451。

如果我给出此格式[mm]:ss,000,它将显示为2715:15,015。 我期待以下内容,

在Excel中的时间:45:15:15,015

我如何在C#中实现这一目标?

谢谢, Sathiyathanam

1 个答案:

答案 0 :(得分:2)

没有这样的格式说明符。您可以编写一个扩展方法来做到这一点:

public static string FormatGreater24h(this TimeSpan span)
{
    return $"{(int) span.TotalHours}:{span.Minutes}:{span.Seconds}";
}