ダブルバッファリング


コントロールがちらつく場合はコントロールのダブルバッファリングを有効にすると改善することがある。
上記を指定するプロパティDoubleBufferedはProtectedのため
単純に指定できないので以下のようにRefrectionを使用し、GetPropertyで指定する(C#のみ)


以下、Form_Loadイベントに埋め込むサンプルコード

typeof(DataGridView).GetProperty("DoubleBuffered",BindingFlags.Instance | BindingFlags.NonPublic).SetValue(dataGridView1, true, null);

※dataGridView1の箇所は任意のコントロール名とすること
UsingにSystem.Refrectionを追加しおくこと


参考

http://www.atmarkit.co.jp/fdotnet/dotnettips/197doublebuf/doublebuf.html


ダブルバッファリングでは描画を直接行うのではなく、別メモリ領域に書き込んで最後にコピーするため
ちらつき等を防ぐことができる。
ただ、メモリを少し多目に使うかも?(未確認)


動作確認環境:Visual Stadio 2012 Framework2.0