質問者
datagridviewでの計算について

質問
すべての返信
-
以下と同じようなことではないでしょうか?
デバッグでCrystalReportsのデータが表示されないのですが
http://forums.microsoft.com/MSDN-JA/ShowPost.aspx?PostID=932381&SiteID=7 -
参考スレッドをみてみましたが、理解が難しいです。勉強不足で申し訳ないです。
同じようなことかどうかも判断つきませんでしたので、コードを記述します。
Form1(一覧画面)
Form2(登録画面)mainテーブル-subテーブルのリレーションです。subテーブルがdatagridviewです。
Form1からForm2を呼出す時、Form1側ボタンクリック
Dim frm As New Form2()
frm.ShowDialog(Me)
Form2のLoadイベント
Me.main_TTableAdapter.Fill(Me.DataSet.main_T)
Me.sub_TTableAdapter.Fill(Me.DataSet.sub_T)
Me.main_TBindingSource.AddNew()
Form2のdatagridviewのenterイベント
Me.main_TBindingSource.EndEdit()
subテーブルのDataSet.vb(sub_TDataTable_ColumnChangingイベント)
If (e.Column.ColumnName=Me.値1Column.ColunmName)Then
Try
Form2.sub_TDataGridView.CurrntRow.Cells(5).Value= _
Form2.sub_TDataGridView.CurrntRow.Cells(2).Value * e.ProposedValue
e.Row.SetColumnError(e.Column,"")
Catch ex As Exception
e.Row.SetColumnError(e.Column,ex.Message)
End Try
End If
以上を記述しています。
「暗黙のインスタンス」というのが関係しているのでしょうか?
-
enterイベントの中にForm2.sub_TDataGridViewとForm2.sub_TDataGridViewがあります。見る限り、ここで既定のインスタンスが新たに生成されています。自分自信のインスタンスを操作するにはMeを使います。
一番最初の質問で、
ayuko さんからの引用
Form2からForm1を起動してdatagridviewに入力すると合計計算でオブジェクト参照のエラーがでてしまいます。
とあるのですが、Form2からForm1をふたたび開き直しているのでしょうか? この辺りの情報が無くて、ちょっとよくわかりません。