VB.NETのDataGridViewについて質問です。
セル編集完了後に、編集した値が不正であるならその値をセル編集前に戻すというプログラムを作成しています。
しかし、現在値を正常に戻すことが出来ずに困っています。
現在は下記のように作成しています。
(1)CellBeginEditイベントを使用して、セル編集前の段階の値を「cellItem」変数に保存する
(2)CellParsingイベントを使用して、保存した値で復元する。
(2)の段階で、下記の「cellItem」変数には値が入っているにも関わらず、セルに値が登録されていません。
尚、ボタンクリックイベント等で
dgv.Rows(e.RowIndex).Cells(e.ColumnIndex).Value = cellItem
を行うと、正常に値が登録されました。
セル編集完了後に値を戻すにはどのようにすれば良いのでしょうか?
お分かりになる方がいらっしゃいましたら宜しくお願いします
'セル編集開始前
Private Sub dgv_CellBeginEdit(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellCancelEventArgs) Handles dgv.CellBeginEdit
cellItem = dgv.Rows(e.RowIndex).Cells(e.ColumnIndex).Value
End Sub
'セル編集完了後
Private Sub dgv_CellParsing(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellParsingEventArgs) Handles dgv.CellParsing
dgv.Rows(e.RowIndex).Cells(e.ColumnIndex).Value = cellItem
End Sub
お礼
出来ました 予想外に簡単にできて少し驚きました ありがとうございました