- - PR -
リレーションを組んだ親子フォームの処理について
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2006-06-08 10:41
お世話になります。
一つのフォームにテキストボックスとdataGridを配置し、 テキストボックスにヘッダー情報(Table_A)、 dataGridに明細情報(Table_B)を表示・入力する伝票のようなフォームを作っています。 (Table_A)<--- [ID]がKey [ID] [fA] [fB] 001 AAA1 BBB1 002 AAA2 BBB2 ・・・ (Table_B) <--- [B_ID]がKey [B_ID] [A_ID] [fC] 001 001 1 002 001 2 003 001 3 004 002 1 005 002 2 Table_AとTable_Bは[ID]-[A_ID]でリレーションを組んでいます。 他のフォームから、T_AのIDを指定する変数を受取り、それをdataViewのfindで探し、 テキストボックスにバインドしています。 そこで、dataGridのデータソースに「dataView」をデータメンバに「relation名」としています。 これで一枚の伝票データを表示できるのですが、 明細側(Table_B)にデータを追加するために現在のdataGridに表示されている件数を取得しようと、 int Pos = dataGrid.BindingContext[dataSet, "リレーション名"].Count; というコードを走らせると、明細側データが何件でも必ずPosが「1」となってしまいます。 上記例でTable_Aの[001]のデータを表示させている時ならば、 リレーションされているTable_Bのデータは3件表示されていますので、 Posは「3」となるようにしたいのです。 現在のdataGridの件数を取得するには、どのように書いたら良いのでしょうか? どなたかアドバイスを頂けたら助かります。 |
1