DataGridViewを表示する際に、画面がチラチラとします。
高速なアルゴリズムで、DataGridViewにデータをセットしても、この現象は発生します。
これを解消する一番簡単な方法は、ダブルバッファリングを有効にすることです。
ダブルバッファリングとは、グラフィック処理などで利用されるアルゴリズムです。
図やデータを設定しながら、画面を表示するのではなく、すべての図やデータを画面表示エリア外にまとめて設定し、その後、そのエリア外を画面表示エリアに切り替える動作になります。
このダブルバッファリングを有効にすることで、画面のちらつきを無くすことができます。
ダブルバッファリング有効
1 2 3 4 5 6 7 8 9 10 11 12 |
/// /// DataGridViewのバッファリング設定 /// ///public static void EnableDoubleBuffering(Control control) { control.GetType().InvokeMember( "DoubleBuffered", BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.SetProperty, null, control, new Object[] { true }); } |
呼び出し側
1 |
EnableDoubleBuffering(grid); |