vb.net - 如何在 vb.net 中对整数和日期时间之间的日期时间小时进行求和
问题描述
我有一个 datagridview 列如下:
| 持续时间(小时)| 日期时间1 | 日期时间2 |
| 12 | 2020-8-10 8:00 | ? |
| 28 | 2020-8-13 8:00 | ? |
Datetime2的值是Duration和Datetime1之间的小时数之和,格式应为“yyyy-mm-dd H:mm”。是否可以进行操作并将其放在Datetime2列中?
注意:可用时间是8.00-16.00,所以如果总和的结果在16.00以上,日期会增加,从8.00开始
我想要的结果是这样的:
| 持续时间(小时)| 日期时间1 | 日期时间2 |
| 12 | 2020-8-10 8:00 | 2020-8-11 12:00 |
| 27 | 2020-8-13 8.00 | 2020-8-17 11:00 |
任何帮助表示赞赏,谢谢
解决方案
循环遍历您的数据源,如果第一列的类型不是 Double,则使用 Double.TryParse(文档),如果第二列的类型不是 DateTime,则使用 DateTime.TryParse(文档),使用 DateTime.AddHours(文档)传递值从第 1 列到第 2 列的值。
这是一个例子:
For Each row In DataGridView1.Rows
If (Not row.IsNewRow) Then
Dim hoursToAdd As Double
Dim dateFrom As DateTime
If (Double.TryParse(rows.Cells(0).Value, hoursToAdd) AndAlso DateTime.TryParse(rows.Cells(1).Value, dateFrom)) Then
Dim dateTo = dateFrom.AddHours(hoursToAdd)
row.Cells(2).Value = dateTo.ToString("yyyy-mm-dd H:mm")
End If
End If
Next
推荐阅读
- ios - 创建第一个中间名和姓氏时的可选项
- animation - matplotlib.pyplot.pause 在小值上太慢
- postgresql - Postgres:检查函数输入数组是否为空或为空或包含空
- git - IntelliJ git 合并工具
- php - 您可以在更新 SQL 字段命令中插入变量吗?
- python - 发送到 Citrix 应用程序时模仿 Python 脚本中的硬件按键(SendKeys 不起作用)
- keras - keras 中“密集”功能的代码在哪里?
- dart - 如何获取按钮的对象[颤振]
- django - 在 django 中为模型创造完整历史的最佳方法是什么?
- php - 如何在电子邮件中添加额外提交的详细信息