如果用户将datagridview单元格留空,则显示错误消息

时间:2013-06-18 19:51:24

标签: vb.net datagridview validating

我正在尝试在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

1 个答案:

答案 0 :(得分: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
      ......