1

私の現在のコードは、フィールドに整数以外を入力した場合、数値入力のみが受け入れられることをユーザーに通知するメッセージボックスを表示します。ただし、デフォルト値を 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
4

1 に答える 1

1

このスレッドから

DataError イベントは、外部のデータ解析操作または検証操作で例外がスローされた場合、またはデータ ソースへのデータのコミットが失敗した場合に発生します。

それに基づいて、値がコミットされないため、ここで値を修正することはできません。正しい/デフォルト値を DataGridView セルに変更したら、それをコミットする必要があります。したがって、 e.Cancel = false を設定すると OK になります。

したがって、e.Cancel = false値を変更した後に設定するだけで機能します。

お役に立てれば

于 2013-06-20T22:16:55.473 に答える