« ふち付け君の今後について | トップページ | 「ふち付け君」の近況 »

2008.01.14

GridDataViewでの問題

2008年に入ってすでに半月経過しました。
仕事が忙しくて予告した「ふち付け君」の再公開の準備は進んでいません。もうしばらくお待ちください。

それとは別に今日は自分自身の記録のためにも今やっている仕事で見つけたGridDataViewの不思議な動作について書いておきます。

今作っているプログラムではリスト表示のためにDataGridViewコンポーネントを使用しています。このコンポーネントは本来はデーターソースとしてデータベースに接続して使用するもののようですが、アプリケーションからデータを操作して使うこともできます。
いろいろと便利なのでこのコンポーネントを使っているのですが、今日おかしな動作をしていることに気がつきました。最初はうまく動くのですが、データを更新するために一度からにして再設定し直した時にスクロールバーの状態と実際のデータの状態があわなくなって操作しているとエラーが起きます。プログラムの原因でないと思うのでこの症状について検索してみたところこのサイト内の記述にヒントを見つけました(掲示板なのでトップにリンクしています)。
このページによると同じような現象に以下の2行を入れるとなぜかうまくいくという情報があったので更新処理の最後に入れて試して見ました。

tblXXX.VirtualMode = True tblXXX.VirtualMode = False

テストの結果はこれで上記トラブルは解決したように見えます。
本来のVirtualModeは部分更新のための仕組みのはずですが、これでうまく行く理由はよくわかりません。そもそもの動作がバグっぽいのでデータと表示の同期に問題があってたまたまこの部分を操作することで同期が正常に行われるのではないかと予想しています。

|

« ふち付け君の今後について | トップページ | 「ふち付け君」の近況 »

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/12443/17695965

この記事へのトラックバック一覧です: GridDataViewでの問題:

« ふち付け君の今後について | トップページ | 「ふち付け君」の近況 »