0

データを保存する前に、1 つ以上の datagridview セルが null であるかどうかをフィルタリングまたはチェックするときに助けが必要です。いくつかのコードを試しましたが、常にエラーが発生します。以下は写真です。

ここに画像の説明を入力

前もって感謝します。

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 に答える