2

我正在尝试验证 datagridview 中的用户数据。现在,如果用户留空,我有一列需要显示错误消息。如果 datagridview 单元格需要一个数字但用户键入了一个字符串,我已经知道如何显示错误消息。那么,如果用户将 datagridview 单元格留空,我该如何更改此代码以显示错误消息。

    If (e.ColumnIndex = 0) Then 'checking numeric value for column 1 only
       Dim value As String = DataGridView1.Rows(e.RowIndex).Cells(e.ColumnIndex).Value.ToString()
       For Each c As Char In value
           If Not Char.IsDigit(c) Then
               MessageBox.Show("Please Enter numeric Value")
               DataGridView1.Rows(e.RowIndex).Cells(e.ColumnIndex).Value = String.Empty
               Exit Sub
            End If
        Next
    End If
4

1 回答 1

2

如果单元格可能为 Nothing,请不要尝试应用 ToString(),而是分配 Value 属性,然后针对 Nothing 进行测试,然后对空字符串使用OrElse运算符

If (e.ColumnIndex = 0) Then 'checking numeric value for column 1 only
   Dim cellData = DataGridView1.Rows(e.RowIndex).Cells(e.ColumnIndex).Value
   if cellData Is Nothing OrElse IsDBNull(cellData) OrElse cellData.ToString = String.Empty Then
       MessageBox.Show("Please Enter a Value")
       Exit Sub
   End If

   Dim value = cellData.ToString()
   For Each c As Char In value
      ......
于 2013-06-18T19:57:45.803 回答