tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
[ツリー表示へ]  [ワード検索]  [Home]

タイトル Re^2: データの更新結果をデータグリッドに反映したい
投稿日: 2012/06/15(Fri) 08:54
投稿者かっちゃん
> > データの更新結果をデータグリッドに即、反映したい
> System.Windows.Forms.DataGridView ではなく、
> System.Windows.Forms.DataGrid     をお使いなのですか?
>
> .NET 2.0 以降なら、データグリッドではなくデータグリッドビューをお奨めします。
> http://msdn.microsoft.com/ja-jp/library/ms171628%28VS.80%29.aspx
>
> それとも、利用しているのは ASP.NET 用の DataGrid サーバーコントロールなのでしょうか?
> (ASP.NET 版の DataGrid では Columns.Clear できるが、WinForm 版では利用できない)
>
>
> > rsALibraryM = New ADODB.Recordset
> ADO を併用利用することは、可能な限り避けてください。
>
> 今のままだと、ADODB.Connection による接続と、OleDbConnection による接続が
> 二本張られることになりますし、その上、COM Interop も行われることになります。
> ADO.NET に一本化することを 強く お奨めします。
>
> 特に adOpenStatic な場合は、カーソル操作が必須というわけでも無いため、
> 多くの場合、Recordset を ADO.NET の DataTable に置き換える形で移植できるはずです。
>
>
> どうしても ADO を使うのであれば、PIA を参照設定したうえで、
> 適宜、Marshal.ReleaseComObject の呼び出しが必要とされる事に
> 注意してください。Close したり Nothing 代入するだけでは不十分です。
>
> http://support.microsoft.com/kb/321415/ja
> 》プライマリ相互運用アセンブリを使用する場合、コンパイラでは、
> 》さまざまな ADO オブジェクトに対して複数のオブジェクト名を使用できます。
> 》ADO が正常に動作するためには、使用するクラスのクラス名の最後に、
> 》必ず "Class" という単語が含まれている必要があります。次に例を示します。
> 》 ADODB.ConnectionClass
>
> 》これらのオブジェクトを使用する場合は、この資料で説明した
> 》ReleaseComObject を使用して、COM で参照が解放されるようにします。
>
>
> > そのあとデータの更新を実施した結果を
> > データグリッド"dgdGrid"にも反映したいのですが
> > どのようなロジックを入れたらよいでしょうか
> rsALibraryM を使うのではなく、wkDS に対して追加・削除・編集を行い、
> その編集結果を wkAdp1 経由で Update するようにしてみてください。
>
> もしくは、wkAdp1.Fill(DataTable, ADODB.Recordset) を用いて、
> Recordset 経由で wkDS.Tables("LibraryM") にデータをもってくるとか。
>
> DB に格納済みなデータなら、再度読み込み直す…という選択肢も。

魔界の仮面弁士様
いつもありがとうございます。

今まで、VB6.0を使っており、今回初めてVS2010によるVBへ変換している最中です
System.Windows.Forms.DataGrid は System.Windows.Forms.DataGridView に変更しました。  
現時点ではADO.NETがわからない状態ですので
理解するのに、もう少し時間がかかると思います。
よろしくお願いいたします。

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。