0

在保存数据之前过滤或检查一个或多个 datagridview 单元格是否为空时,我需要帮助。我尝试了几个代码,但总是有错误。下面是图片。

在此处输入图像描述

提前致谢。

4

2 回答 2

2
For Each rw As DataGridViewRow In dataGridView1.Rows
    For i As Integer = 0 To rw.Cells.Count - 1                  
        If rw.Cells(i).Value Is Nothing OrElse rw.Cells(i).Value = DBNull.Value OrElse  String.IsNullOrWhitespace(rw.Cells(i).Value.ToString()) Then
                  'empty
        End If
    Next
Next
于 2013-10-16T07:03:52.043 回答
0

你可以写一个这样的函数:

Public Function IsDataGridViewEmpty(ByRef dataGridView As DataGridView) As Boolean
    Dim isEmpty As Boolean = True
    For Each row As DataGridViewRow In dataGridView.Rows
        For Each cell As DataGridViewCell In row.Cells
            If Not String.IsNullOrEmpty(cell.Value) Then
                If Not String.IsNullOrEmpty(Trim(cell.Value.ToString())) Then
                    isEmpty = False
                    Exit For
                End If
             End If
        Next
    Next
    Return isEmpty
 End Function

或使用 Linq :

Public Function IsDataGridViewEmpty(ByRef dataGridView As DataGridView) As Boolean
    Dim isEmpty As Boolean = True
    For Each row As DataGridViewRow In From row1 As DataGridViewRow In dataGridView.Rows Where (From cell As DataGridViewCell In row1.Cells Where Not String.IsNullOrEmpty(cell.Value)).Any(Function(cell) Not String.IsNullOrEmpty(Trim(cell.Value.ToString())))
        isEmpty = False
    Next
    Return isEmpty
End Function
于 2014-12-24T10:35:06.717 回答