C# 在stimulsoft中格式化TimeSpan摘要
我正在使用TimeSpan类型的列创建简单的表报表。 我把它的值加起来,这会导致大于24小时的值,变成文本成分C# 在stimulsoft中格式化TimeSpan摘要,c#,formatting,timespan,stimulsoft,C#,Formatting,Timespan,Stimulsoft,我正在使用TimeSpan类型的列创建简单的表报表。 我把它的值加起来,这会导致大于24小时的值,变成文本成分 {SumTime(DataBand1,Records.time)} 我试图将文本字段的格式设置为HH:mm:ss,但在25小时内,我的目标是01:00:00(或1.01:00:00,常规格式),而不是25:00:00 编辑:问题不在于如何格式化timespan,而在于如何将格式化的值关联到Stimulsoft的文本组件。Hours属性的最大值为24小时。您可以使用String.for
{SumTime(DataBand1,Records.time)}
我试图将文本字段的格式设置为HH:mm:ss,但在25小时内,我的目标是01:00:00(或1.01:00:00,常规格式),而不是25:00:00
编辑:问题不在于如何格式化timespan,而在于如何将格式化的值关联到Stimulsoft的文本组件。Hours属性的最大值为24小时。您可以使用
String.format
和TimeSpan.TotalHours
自己对其进行格式化:
string text = string.Format("{0}:{1}:{2}",
(int) Records.time.TotalHours, // TotalHours is double
Records.time.Minutes,
Records.time.Seconds);
我知道这是一个老生常谈的问题,但我自己也在寻找解决方案时偶然发现了它。在做了一些挖掘之后,我得出以下结论: 假设您已经有一个timespan变量(在数据源中设置它,或者使用DateDiff设置变量),可以使用以下格式对其进行格式化:
{string.Format("{0}:{1}:{2}",
(int) Variable1.TotalHours,
Variable1.Minutes,
Variable1.Seconds)}
假设您有两个不同的字段(名为Date1和Date2),您需要获得其差异,并且不想将其放入变量中:
{string.Format("{0}:{1}:{2}",
(int) DateDiff(Date2,Date1).TotalHours,
DateDiff(Date2,Date1).Minutes,
DateDiff(Date2,Date1).Seconds)}
可能相关(我不熟悉stimulsoft)是的,使用这种格式会得到很好的结果,但我需要知道,如何将use这个文本变量与stimulsoft的文本组件中的文本字段相关联