如何计算列总和?

时间:2018-04-09 00:18:29

标签: c# sum devexpress hour gridcontrol

通过showfooter方法准备的GridControl中的列有几个小时,就像你在图片中看到的那样我想要总结那些小时的列我该怎么办?

Thnx的帮助

enter image description here

1 个答案:

答案 0 :(得分:0)

您可以使用TimeSpan类以hours:minutes格式解析字符串,并可以在循环中将它们一起添加。例如:

private static void Main()
{
    var colTimes = new List<string>
    {
        "01:00", "02:10", "07:40", "03:45", "02:45"
    };

    var totalTime = new TimeSpan(0, 0, 0);

    foreach(string colTime in colTimes)
    {
        totalTime = totalTime.Add(TimeSpan.Parse(colTime));
    }

    Console.WriteLine($"Times: {string.Join(", ", colTimes)}");
    Console.WriteLine($"\nThe total is: {totalTime.ToString(@"hh\:mm")}");

    GetKeyFromUser("\nDone!\nPress any key to exit...");
}

或者你可以做一个基于Linq的替代方案并避免循环:

var totalTime = new TimeSpan(colTimes.Sum(time => TimeSpan.Parse(time).Ticks));

<强>输出

![enter image description here