タイトル : Re^3: datagridviewの再表示 投稿日 : 2008/08/29(Fri) 13:35 投稿者 : るしぇ
まず、言えるのは、FormA と FormB の処理は関係なさそうってこと。 どっちもデータベース接続から切断までやっており、処理として独立 してますから、FormA でバグが起っても FormB が関わっている可能性は 極めて低いし、逆もまた然り。 裏を返せば、FormB でデータを更新しようが、FormA とは関係ない・ 影響できないと言ってもいいでしょう。依存度が低くていい設計だと 思います。 で、もう少し言うなら、データベースと FormA(FormB) とも関係ないです。 切断した後は。。。ですが。データベースからデータを取得したら、 切断しているわけですから、ローカルに存在するデータを画面に表示して います。その後、勝手にデータベースに影響を与えることはありませんし、 データベースの変更を勝手に反映させることもありません。関係ないです。 FormB はデータベースを直接更新してます。しかし、 >ここで DataGridView をリフレッシュしたのですが出来ませんでした。 FormA はデータベースから切断されたローカルのデータを見ているの ですから、データが更新されないので正解。 Refresh メソッドはコントロールに設定されているデータで画面を 再描画するだけで、切断されたデータベースに勝手につなぎにいったりは しません。最新のデータを表示したいなら、再度データベースから データを取得してください。 >DataGridView1.refresh() ←ここでエラー これは分かりません。Refresh メソッドでエラーが起こるのは珍しい ように思います。とりあえず、エラーメッセージに原因が書いてあります。 エラーメッセージでヘルプ(MSDN)を検索すれば、原因と対処法も載って ます。それに従ってください。 |