ダブルバッファリングの有効化、グラフィックスの性能、Windowsのバージョンにより、ちらつきが発生しない場合もあります。
フォームなどの画面を頻繁に描画する場合に画面がちらつく場合があります。原因の一つとして、画面の再描画時に背景を初期化が挙げられます。
背景の初期化はフォームの背景を背景色で塗りつぶして初期化するため、画面がちらついて見える原因となります。画面の再描画時に背景の初期化が必要ない場合は背景の初期化をしないことでちらつきを抑えることができます。
背景の初期化処理は OnPaintBackGroundメソッドでされるため、OnPaintBackGroundメソッドをオーバーライドして処理を何もしなければ、背景の初期化処理をしないことになります。
以下のコードをフォームのクラスに追記します。
protected override void OnPaintBackground(PaintEventArgs pevent)
{
}
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace App
{
public partial class FormMain : Form
{
public FormMain()
{
InitializeComponent();
}
protected override void OnPaintBackground(PaintEventArgs pevent)
{
}
}
}