VB.NET はちょっとしたツール(定例処理で使う超シンプルな FTP クライアントとか)を作るのに使ってたので(ちいさなプログラムでも、それなりに内部的にはややこしいことをしてたしな)、コーディング自体は問題なかったのだが、実は DB がらみのプログラムは全然書いたことがなかった。
なので、DB のデータを DataSet にセットして云々かんぬんなんてやったことなかったわけよ(^^;
なので、7月、8月に作ったプログラムって、無駄なことしてるわあ(^^;
ある DataSet の中身を並び替えて DataGridView にセットするんだけど、
' 並び替えのため DataSet を View にセットDim hogeDv As DataView = hogeDs.t_hoge.DefaultView' 並びかえ(あのコード1、この日付1)hogeDv.Sort = "ano_code1, kono_date1"' 並び替えを行った View を新しい DataSet にコピーDim newDs As New HogeDataSetFor Each drv As DataRowView In hogeDvDim dr As HogeDataSet.t_hogeRow = CType(drv.Row, HogeDataSet.t_hogeRow)Dim ndr As HogeDataSet.t_hogeRow = newDs.t_hoge.Newt_hogeRowndr.ItemArray = dr.ItemArraynewDs.t_hoge.Addt_hogeRow(ndr)Next' 更新の反映newDs.AcceptChanges()Me.HogeBindingSource.DataMember = newDs.t_hoge.TableNameMe.HogeBindingSource.DataSource = ds
みたいに、わざわざ View の内容を新しい DataSet にセットしてから BindingSource にバインドしてたけど、そんなことする必要なかったんやなあ。
別に View のままで突っ込めたんや。
この頃は、DataSet がらみのクラスのプロパティの内容とかあまり理解してなかったからなあ(^^;
実際は、
' 並び替えのため DataSet を View にセットDim hogeDv As DataView = hogeDs.t_hoge.DefaultView' 並びかえ(あのコード1、この日付1)hogeDv.Sort = "ano_code1, kono_date1"Me.HogeBindingSource.DataMember = hogeDv.Table.TableNameMe.HogeBindingSource.DataSource = hogeDv
これでええんやな。
恥ずかしいから、過去のコードもこっそり直しとかないと(^^;(まあ、なんの問題もなく動いてるので、そんなにじっくりソースを見られちゃうこともないだろうけど)
電気ウナギ的○○
About Backコメント(0)
電気ウナギ的○○