VB.NET DataGridViewでデータエラー
DataGridViewを使った画面で、データの編集が終わった後にエラーが出ると学生から相談があった。コードをもらって動かしてみたが特に変なところはない。しかも、Exceptionが勝手に拾われてメッセージが表示されている。
DataGridViewで次の例外が発生しました。
System.IndexOutOfRangeException: インデックス0に値がありません。
ググったところ、原因は、不正な値がDataTableに入った場合に起こるエラーで、DataErrorイベントハンドラーによって処理されている。特に設定をしないと既定のメソッドで処理が行われるらしい。つまり、通常のエラーとは違い勝手にダイアログが表示される。
そして、コードは特にエラーがないように思われた、、、。そして、急ぎの相談。
そこで、取りあえずDataErrorイベントを拾って、放置することにした、、、。
DataGridView.DataError Event (System.Windows.Forms)
Private Sub WithdrawDataGridView_DataError(sender As Object, e As DataGridViewDataErrorEventArgs) Handles WithdrawDataGridView.DataError
End Sub