再連結
データグリッドの DataSource に Nothing を入れてリセットし、データセットをリロードして、連結をしてやっています。
Private gDS as System.Data.DataSet ' ちゃんと Fill していること Private gAdapter As System.Data.SqlClient.SqlDataAdapter ' ちゃんとコマンドを取り込んでおくこと Friend WithEvents gGrid As System.Windows.Forms.DataGrid ' ちゃんと生成してフォームに貼り付けてあること ... ' パージする gGrid.DataSource = Nothing ' データセットのリロード gAdapter.Fill( gDS ) gGrid.DataSource = gDS gGrid.DataMember = gDS.Tables(0).TableName
なお、Visual Studio .Net 2003 のデータフォームウィザードでは、次のようなことを行っています。
- テンポラリのデータセットを生成して、Fillする
- グリッドのDataSourceに入れてあるデータセットの内容をクリアする
- グリッドのDataSource(空っぽ)にテンポラリのデータセットをマージする
この方法だと、再連結が必要なくなります。