Override the DefaultSize property to gain better performance : Control « GUI Windows Forms « C# / CSharp Tutorial






using System;
using System.Drawing;
using System.Windows.Forms;

public class FormWithDefaultSize : Form
{
  private Button btnShow;
  private Button btnChange;
  private Label lbl;

  protected override Size DefaultSize
  {
    get
    {
      return new Size(400,400);
    }
  }

  public FormWithDefaultSize()
  {
    BackColor = Color.LightBlue;
    ForeColor = Color.DarkBlue;


    btnShow = new Button();
    btnShow.Location = new Point(50,50);
    btnShow.Size = new Size(100,23);
    btnShow.Text = "Show";
    btnShow.Click += new System.EventHandler(btnShow_Click);
    btnShow.Parent = this;

    btnChange = new Button();
    btnChange.Location = new Point(200,50);
    btnChange.Size = new Size(100,23);
    btnChange.Text = "Change";
    btnChange.Click += new System.EventHandler(btnChange_Click);
    btnChange.Parent = this;

    lbl = new Label();
    lbl.Text = "Control Size and Location";
    lbl.Size = new Size(400,25);
    lbl.Parent = this;
  }

  static void Main() 
  {
    Application.Run(new FormWithDefaultSize());
  }

  private void btnShow_Click(object sender, EventArgs e)
  {
    Console.WriteLine("Button Bottom:" + btnShow.Bottom.ToString());
    Console.WriteLine("Button Top:" + btnShow.Top.ToString() );
    Console.WriteLine("Button Left:" + btnShow.Left.ToString() );
    Console.WriteLine("Button Right:" + btnShow.Right.ToString() );
    Console.WriteLine("Button Location:" + btnShow.Location.ToString() );
    Console.WriteLine("Button Width:" + btnShow.Width.ToString() ); 
    Console.WriteLine("Button Height:" + btnShow.Height.ToString() );
    Console.WriteLine("Button Size:" + btnShow.Size.ToString() );
    Console.WriteLine("Button ClientSize:" + btnShow.ClientSize.ToString() );
    Console.WriteLine("Form Size:" + this.Size.ToString() );
    Console.WriteLine("Form ClientSize:" + this.ClientSize.ToString());
  }

  private void btnChange_Click(object sender, EventArgs e)
  {
    this.Size = new Size(800,200);
  }
}








23.53.Control
23.53.1.Control: TabIndex, Size and LocationControl: TabIndex, Size and Location
23.53.2.Control Tag PropertyControl Tag Property
23.53.3.Control Size and Location - DynamicControl Size and Location - Dynamic
23.53.4.Control Size and LocationControl Size and Location
23.53.5.Override the DefaultSize property to gain better performance
23.53.6.Create User Control based on Control classCreate User Control based on Control class
23.53.7.Get controls on a form and verify its typeGet controls on a form and verify its type
23.53.8.Set Caption(title) of the formSet Caption(title) of the form
23.53.9.Set form forground colorSet form forground color
23.53.10.Render onto the buttonRender onto the button