C# Tips


フォームのレイアウトを高速化するには


フォームのレイアウトをアプリケーションで変更するとき、普通にコードを書くと、一つのレイアウトが変更されるたびに描画が発生して、無駄なパフォーマンスの低下が起こります。
これを防ぐためには、レイアウト前にSuspendLayoutメソッドを呼び出し、レイアウトが終了した後ResumeLayoutメソッドを記述するようにします。
以下はMicrosoftのヘルプに載っている例です。
this.SuspendLayout();
Button buttonOK = new Button();
buttonOK.Location = new Point(10, 10);
buttonOK.Size = new Size(75, 25);
buttonOK.Text = "OK";

Button buttonCancel = new Button();
buttonCancel.Location = new Point(90, 10);
buttonCancel.Size = new Size(75, 25);
buttonCancel.Text = "Cancel";
      
this.Controls.AddRange(new Control[]{buttonOK, buttonCancel});
this.ResumeLayout();


目次に戻る
Copyright(c) 2008 WoodenSoldier Software