Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/266.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在stimulsoft中格式化TimeSpan摘要_C#_Formatting_Timespan_Stimulsoft - Fatal编程技术网

C# 在stimulsoft中格式化TimeSpan摘要

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

我正在使用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.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的文本组件中的文本字段相关联