コントロールがちらつく場合はコントロールのダブルバッファリングを有効にすると改善することがある。
上記を指定するプロパティ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