VB.NET使用DateTime.Now自动填充DataGridView列单元格

时间:2016-04-28 12:16:55

标签: vb.net datetime datagridview

我有一个VB.NET DataGridView,需要用户输入才能填充Null Columns。 我有那个功能。 我想让date_time列填充其他列不为NULL时的当前日期/时间。目标是在填充其他单元格时附加准确的时间。

我希望我可以使用计时器并监控单元格不为空并触发添加的日期/时间,但我不确定如何将日期/时间填充到单元格。

任何人都可以向我推进正确的方向吗?

谢谢

1 个答案:

答案 0 :(得分:0)

这应该会给你一个良好的开端:

Dim dateTimColumnIndex As Integer = 1 '(example number on my part)
Private Sub CellValueChanged(ByVal sender As Object, _
    ByVal e As DataGridViewCellEventArgs) _
    Handles DataGridView1.CellValueChanged
        If (e.ColumnIndex <> dateTimColumnIndex) Then
            For z As Integer = 0 To DataGridView1.ColumnCount -1
                 If DataGridView1.Item(z, e.RowIndex).Value Is Nothing Then
                    Return
                 End If
                DataGridView1.Rows(e.RowIndex).Cells(dateTimColumnIndex).Value = DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss")
            Next
        End if

End Sub

在您将allDoneLoading的值更改为True

之前,更新后不会执行任何操作
Dim allDoneLoading As Boolean = False
Dim dateTimColumnIndex As Integer = 1 '(example number on my part)
Private Sub CellValueChanged(ByVal sender As Object, _
    ByVal e As DataGridViewCellEventArgs) _
    Handles DataGridView1.CellValueChanged
    If allDoneLoading = True Then
        If (e.ColumnIndex <> dateTimColumnIndex) Then
            For z As Integer = 0 To DataGridView1.ColumnCount - 1
                If DataGridView1.Item(z, e.RowIndex).Value Is Nothing Then
                    Return
                End If
                DataGridView1.Rows(e.RowIndex).Cells(dateTimColumnIndex).Value = DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss")
            Next
        End If
    End If
End Sub