Form上のコントロールが表示されない場合の対処方法|C#

   

作成したFormクラスを以下の様に表示した際、Form上のControlが白くなって描画されない場合があります。

public partial class WaitDialog : Form {
    public WaitDialog() {
        InitializeComponent();
    }
}
using (Form waitDialog = new WaitDialog()) {
    waitDialog.Show();
    // 重い処理
}

この場合の対処方法です。
Application.DoEvents()またはForm.Refresh()をコールすると描画されます。

using (Form waitDialog = new WaitDialog()) {
    waitDialog.Show(this);
    Application.DoEvents();
    // 重い処理
}

または

using (Form waitDialog = new WaitDialog()) {
    waitDialog.Show(this);
    waitDialog.Refresh();
    // 重い処理
}

 - C#