- PR -

DataGridViewの日付列にMaskedTextBoxを使用し、削除しようとしたときエラーになる

投稿者投稿内容
テッテ
ベテラン
会議室デビュー日: 2008/03/16
投稿数: 91
投稿日時: 2008-06-18 13:10
ParsingApplied の設定が抜けてたのですね…よく見てませんでした。
ふりっつさんフォローありがとうございます。

ところで、このままだとまずい気がするのですが…
これだと e が Nothing でないとき常に NULL に変換されるので、
正常な日付も入力できないような気がしますがどうでしょう?
前の返信にも書いた通り、正しい日付の文字列でない場合のみ
この変換を適用するようにしないとまずいと思います。
chelsea
常連さん
会議室デビュー日: 2007/12/19
投稿数: 48
投稿日時: 2008-06-18 15:31
引用:

テッテさんの書き込み

これだと e が Nothing でないとき常に NULL に変換されるので、
正常な日付も入力できないような気がしますがどうでしょう?


すみません一つ前のコードでは正常な日付が入力できませんでした・・・
なので下記に直したところ新規入力、日付変更、日付削除全てできました。

コード:
Private Sub DGV1_CellParsing(ByVal sender As Object, _
ByVal e As DataGridViewCellParsingEventArgs) Handles _
DGV1.CellParsing
        If Me.DGV1.Columns(e.ColumnIndex).HeaderText = "maskColumn1" Then
            If e.Value = "    /  /" Then
                e.Value = DBNull.Value
                e.ParsingApplied = True
            End If
        End If
End Sub


If文の条件式を変更したらうまくいきました。
重ね重ねテッテさんありがとうございました。

スキルアップ/キャリアアップ(JOB@IT)