如何在错误消息后将默认值提供回DataGridViewCell

时间:2013-06-20 20:01:23

标签: vb.net datagridview error-checking

我当前的代码将显示一个消息框,告诉用户如果他们在字段中输入任何非整数,则只接受数字输入。但是,我似乎无法找出如何将默认值提供回datagridviewcell。

Private Sub DataGridViewCOTS_DataError(ByVal sender As Object, ByVal e As DataGridViewDataErrorEventArgs) Handles DataGridViewCOTS.DataError

    If StrComp(e.Exception.Message, "Input string was not in a correct format.") = 0 Then

        'If e.ColumnIndex = 2 Then
        MessageBox.Show("Please Enter a numeric Value")


        'DataGridViewCOTS.Rows(e.RowIndex).Cells(e.ColumnIndex).Value = 3

    End If





End Sub

1 个答案:

答案 0 :(得分:1)

从这个帖子http://social.msdn.microsoft.com/Forums/windows/en-US/ca2b3a41-e598-4a84-ac75-57064febd5e5/change-cell-value-in-datagridviewdataerror

  

当外部数据解析或验证时发生DataError事件   操作抛出异常,或者尝试将数据提交到   数据源失败。

     

基于它,你不能在这里修复这个值   价值不会被提交。更改正确/默认后   DataGridView Cell的值,您必须提交它。 所以,设置   e.Cancel = false就可以了

因此,只需在更改值后设置e.Cancel = false即可。

希望这有帮助