Csharp/CSharp Tutorial/GUI Windows Forms/Form Event

Материал из .Net Framework эксперт
Перейти к: навигация, поиск

All form events

using System;
using System.Collections.Generic;
using System.ruponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
    }
    private void Form1_Activated(object sender, EventArgs e)
    {
        Console.WriteLine("Activated");
    }
    private void Form1_AutoSizeChanged(object sender, EventArgs e)
    {
        Console.WriteLine("Autosizechanged");
       
    }
    private void Form1_AutoValidateChanged(object sender, EventArgs e)
    {
        Console.WriteLine("AutoValidateChanged");
    }
    private void Form1_BackColorChanged(object sender, EventArgs e)
    {
        Console.WriteLine("BackColorChanged");
    }
    private void Form1_BackgroundImageChanged(object sender, EventArgs e)
    {
        Console.WriteLine("BackgroundImageChanged");
    }
    private void Form1_BackgroundImageLayoutChanged(object sender, EventArgs e)
    {
        Console.WriteLine("BackgroundImageLayoutChanged");
    }
    private void Form1_BindingContextChanged(object sender, EventArgs e)
    {
        Console.WriteLine("BindingContextChanged");
    }
    private void Form1_CausesValidationChanged(object sender, EventArgs e)
    {
        Console.WriteLine("CausesValidationChanged");
    }
    private void Form1_ChangeUICues(object sender, UICuesEventArgs e)
    {
        Console.WriteLine("ChangeUICues");
    }
    private void Form1_Click(object sender, EventArgs e)
    {
        Console.WriteLine("Click");
    }
    private void Form1_ContextMenuStripChanged(object sender, EventArgs e)
    {
        Console.WriteLine("ContextMenuStripChanged");
    }
    private void Form1_ControlAdded(object sender, ControlEventArgs e)
    {
        Console.WriteLine("ControlAdded");
    }
    private void Form1_ControlRemoved(object sender, ControlEventArgs e)
    {
        Console.WriteLine("ControlRemoved");
    }
    private void Form1_CursorChanged(object sender, EventArgs e)
    {
        Console.WriteLine("CursorChanged");
    }
    private void Form1_Deactivate(object sender, EventArgs e)
    {
        Console.WriteLine("Deactivate");
    }
    private void Form1_DockChanged(object sender, EventArgs e)
    {
        Console.WriteLine("DockChanged");
    }
    private void Form1_DoubleClick(object sender, EventArgs e)
    {
        Console.WriteLine("DoubleClick");
    }
    private void Form1_DragDrop(object sender, DragEventArgs e)
    {
        Console.WriteLine("DragDrop");
     
    }
    private void Form1_DragEnter(object sender, DragEventArgs e)
    {
        Console.WriteLine("DragEnter");
    }
    private void Form1_DragLeave(object sender, EventArgs e)
    {
        Console.WriteLine("DragLeave");
    }
    private void Form1_DragOver(object sender, DragEventArgs e)
    {
        Console.WriteLine("DragOver");
    }
    private void Form1_EnabledChanged(object sender, EventArgs e)
    {
        Console.WriteLine("EnabledChanged");
    }
    private void Form1_Enter(object sender, EventArgs e)
    {
        Console.WriteLine("Enter");
    }
    private void Form1_FontChanged(object sender, EventArgs e)
    {
        Console.WriteLine("FontChanged");
    }
    private void Form1_ForeColorChanged(object sender, EventArgs e)
    {
        Console.WriteLine("ForeColorChanged");
    }
    private void Form1_FormClosed(object sender, FormClosedEventArgs e)
    {
        Console.WriteLine("FormClosed");
    }
    private void Form1_FormClosing(object sender, FormClosingEventArgs e)
    {
        Console.WriteLine("FormClosing");
    }
    private void Form1_GiveFeedback(object sender, GiveFeedbackEventArgs e)
    {
        Console.WriteLine("GiveFeedback");
    }
    private void Form1_HelpButtonClicked(object sender, CancelEventArgs e)
    {
        Console.WriteLine("HelpButtonClicked");
    }
    private void Form1_HelpRequested(object sender, HelpEventArgs hlpevent)
    {
        Console.WriteLine("HelpRequested");
    }
    private void Form1_ImeModeChanged(object sender, EventArgs e)
    {
        Console.WriteLine("ImeModeChanged");
    }
    private void Form1_InputLanguageChanged(object sender, InputLanguageChangedEventArgs e)
    {
        Console.WriteLine("InputLanguageChanged");
    }
    private void Form1_InputLanguageChanging(object sender, InputLanguageChangingEventArgs e)
    {
        Console.WriteLine("InputLanguageChanging");
    }
    private void Form1_KeyDown(object sender, KeyEventArgs e)
    {
        Console.WriteLine("KeyDown");
    }
    private void Form1_KeyPress(object sender, KeyPressEventArgs e)
    {
        Console.WriteLine("KeyPress");
    }
    private void Form1_KeyUp(object sender, KeyEventArgs e)
    {
        Console.WriteLine("KeyUp");
    }
    private void Form1_Layout(object sender, LayoutEventArgs e)
    {
        Console.WriteLine("Layout");
    }
    private void Form1_Leave(object sender, EventArgs e)
    {
        Console.WriteLine("Leave");
    }
    private void Form1_Load(object sender, EventArgs e)
    {
        Console.WriteLine("Load");
    }
    private void Form1_LocationChanged(object sender, EventArgs e)
    {
        Console.WriteLine("LocationChanged");
    }
    private void Form1_MarginChanged(object sender, EventArgs e)
    {
        Console.WriteLine("MarginChanged");
    }
    private void Form1_MaximizedBoundsChanged(object sender, EventArgs e)
    {
        Console.WriteLine("MaximizedBoundsChanged");
    }
    private void Form1_MaximumSizeChanged(object sender, EventArgs e)
    {
        Console.WriteLine("MAximumSizeChanged");
    }
    private void Form1_MdiChildActivate(object sender, EventArgs e)
    {
        Console.WriteLine("MdiChildActivate");
    }
    private void Form1_MenuComplete(object sender, EventArgs e)
    {
        Console.WriteLine("MenuComplete");
    }
    private void Form1_MenuStart(object sender, EventArgs e)
    {
        Console.WriteLine("MenuStart");
    }
    private void Form1_MinimumSizeChanged(object sender, EventArgs e)
    {
        Console.WriteLine("MinimumSizeChanged");
    }
    private void Form1_MouseCaptureChanged(object sender, EventArgs e)
    {
        Console.WriteLine("MouseCaptureChanged");
    }
    private void Form1_MouseClick(object sender, MouseEventArgs e)
    {
        Console.WriteLine("MouseClick");
    }
    private void Form1_MouseDoubleClick(object sender, MouseEventArgs e)
    {
        Console.WriteLine("MouseDoubleClick");
    }
    private void Form1_MouseDown(object sender, MouseEventArgs e)
    {
        Console.WriteLine("MouseDown");
    }
    private void Form1_MouseEnter(object sender, EventArgs e)
    {
        Console.WriteLine("MouseEnter");
    }
    private void Form1_MouseHover(object sender, EventArgs e)
    {
        Console.WriteLine("MouseHover");
    }
    private void Form1_MouseLeave(object sender, EventArgs e)
    {
        Console.WriteLine("MouseLeave");
    }
    private void Form1_MouseMove(object sender, MouseEventArgs e)
    {
        Console.WriteLine("MouseMove");
    }
    private void Form1_MouseUp(object sender, MouseEventArgs e)
    {
        Console.WriteLine("MouseUp");
    }
    private void Form1_Move(object sender, EventArgs e)
    {
        Console.WriteLine("Move");
    }
    private void Form1_PaddingChanged(object sender, EventArgs e)
    {
        Console.WriteLine("PaddingChanged");
    }
    private void Form1_Paint(object sender, PaintEventArgs e)
    {
        Console.WriteLine("Paint");
    }
    private void Form1_ParentChanged(object sender, EventArgs e)
    {
        Console.WriteLine("ParentChanged");
    }
    private void Form1_QueryAccessibilityHelp(object sender, QueryAccessibilityHelpEventArgs e)
    {
        Console.WriteLine("QueryAccessibilityHelp");
    }
    private void Form1_QueryContinueDrag(object sender, QueryContinueDragEventArgs e)
    {
        Console.WriteLine("QueryContinueDrag");
    }
    private void Form1_RegionChanged(object sender, EventArgs e)
    {
        Console.WriteLine("RegionChanged");
    }
    private void Form1_Resize(object sender, EventArgs e)
    {
        Console.WriteLine("Resize");
    }
    private void Form1_ResizeBegin(object sender, EventArgs e)
    {
        Console.WriteLine("ResizeBegin");
    }
    private void Form1_ResizeEnd(object sender, EventArgs e)
    {
        Console.WriteLine("ResizeEnd");
    }
    private void Form1_RightToLeftChanged(object sender, EventArgs e)
    {
        Console.WriteLine("RightToLeftChanged");
    }
    private void Form1_RightToLeftLayoutChanged(object sender, EventArgs e)
    {
        Console.WriteLine("RightToLeftLayoutChanged");
    }
    private void Form1_Scroll(object sender, ScrollEventArgs e)
    {
        Console.WriteLine("Scroll");
    }
    private void Form1_Shown(object sender, EventArgs e)
    {
        Console.WriteLine("Shown");
    }
    private void Form1_SizeChanged(object sender, EventArgs e)
    {
        Console.WriteLine("SizeChanged");
    }
    private void Form1_StyleChanged(object sender, EventArgs e)
    {
        Console.WriteLine("StyleChanged");
    }
    private void Form1_SystemColorsChanged(object sender, EventArgs e)
    {
        Console.WriteLine("SystemColorsChanged");
    }
    private void Form1_TextChanged(object sender, EventArgs e)
    {
        Console.WriteLine("TextChanged");
    }
    private void Form1_Validated(object sender, EventArgs e)
    {
        Console.WriteLine("Validated");
    }
    private void Form1_Validating(object sender, CancelEventArgs e)
    {
        Console.WriteLine("Validating");
    }
    private void Form1_VisibleChanged(object sender, EventArgs e)
    {
        Console.WriteLine("VisibleChanged");
    }
}
partial class Form1
{
    private void InitializeComponent()
    {
        this.button1 = new System.Windows.Forms.Button();
        this.SuspendLayout();
        // 
        // button1
        // 
        this.button1.Location = new System.Drawing.Point(87, 79);
        this.button1.Name = "button1";
        this.button1.Size = new System.Drawing.Size(75, 23);
        this.button1.TabIndex = 0;
        this.button1.Text = "button1";
        // 
        // Form1
        // 
        this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
        this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
        this.ClientSize = new System.Drawing.Size(292, 266);
        this.Controls.Add(this.button1);
        this.Name = "Form1";
        this.Text = "Form1";
        this.CursorChanged += new System.EventHandler(this.Form1_CursorChanged);
        this.RightToLeftLayoutChanged += new System.EventHandler(this.Form1_RightToLeftLayoutChanged);
        this.QueryContinueDrag += new System.Windows.Forms.QueryContinueDragEventHandler(this.Form1_QueryContinueDrag);
        this.Deactivate += new System.EventHandler(this.Form1_Deactivate);
        this.Load += new System.EventHandler(this.Form1_Load);
        this.BackgroundImageLayoutChanged += new System.EventHandler(this.Form1_BackgroundImageLayoutChanged);
        this.RightToLeftChanged += new System.EventHandler(this.Form1_RightToLeftChanged);
        this.DragLeave += new System.EventHandler(this.Form1_DragLeave);
        this.InputLanguageChanged += new System.Windows.Forms.InputLanguageChangedEventHandler(this.Form1_InputLanguageChanged);
        this.Validating += new System.ruponentModel.CancelEventHandler(this.Form1_Validating);
        this.BackgroundImageChanged += new System.EventHandler(this.Form1_BackgroundImageChanged);
        this.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.Form1_MouseDoubleClick);
        this.DragEnter += new System.Windows.Forms.DragEventHandler(this.Form1_DragEnter);
        this.ControlAdded += new System.Windows.Forms.ControlEventHandler(this.Form1_ControlAdded);
        this.FontChanged += new System.EventHandler(this.Form1_FontChanged);
        this.MaximizedBoundsChanged += new System.EventHandler(this.Form1_MaximizedBoundsChanged);
        this.AutoSizeChanged += new System.EventHandler(this.Form1_AutoSizeChanged);
        this.Paint += new System.Windows.Forms.PaintEventHandler(this.Form1_Paint);
        this.VisibleChanged += new System.EventHandler(this.Form1_VisibleChanged);
        this.BindingContextChanged += new System.EventHandler(this.Form1_BindingContextChanged);
        this.HelpButtonClicked += new System.ruponentModel.CancelEventHandler(this.Form1_HelpButtonClicked);
        this.EnabledChanged += new System.EventHandler(this.Form1_EnabledChanged);
        this.MouseDown += new System.Windows.Forms.MouseEventHandler(this.Form1_MouseDown);
        this.ContextMenuStripChanged += new System.EventHandler(this.Form1_ContextMenuStripChanged);
        this.Scroll += new System.Windows.Forms.ScrollEventHandler(this.Form1_Scroll);
        this.MouseLeave += new System.EventHandler(this.Form1_MouseLeave);
        this.MouseClick += new System.Windows.Forms.MouseEventHandler(this.Form1_MouseClick);
        this.Validated += new System.EventHandler(this.Form1_Validated);
        this.ParentChanged += new System.EventHandler(this.Form1_ParentChanged);
        this.Resize += new System.EventHandler(this.Form1_Resize);
        this.ControlRemoved += new System.Windows.Forms.ControlEventHandler(this.Form1_ControlRemoved);
        this.Shown += new System.EventHandler(this.Form1_Shown);
        this.AutoValidateChanged += new System.EventHandler(this.Form1_AutoValidateChanged);
        this.SizeChanged += new System.EventHandler(this.Form1_SizeChanged);
        this.DoubleClick += new System.EventHandler(this.Form1_DoubleClick);
        this.Activated += new System.EventHandler(this.Form1_Activated);
        this.Enter += new System.EventHandler(this.Form1_Enter);
        this.Layout += new System.Windows.Forms.LayoutEventHandler(this.Form1_Layout);
        this.MouseUp += new System.Windows.Forms.MouseEventHandler(this.Form1_MouseUp);
        this.StyleChanged += new System.EventHandler(this.Form1_StyleChanged);
        this.ForeColorChanged += new System.EventHandler(this.Form1_ForeColorChanged);
        this.DragDrop += new System.Windows.Forms.DragEventHandler(this.Form1_DragDrop);
        this.MouseEnter += new System.EventHandler(this.Form1_MouseEnter);
        this.MdiChildActivate += new System.EventHandler(this.Form1_MdiChildActivate);
        this.Leave += new System.EventHandler(this.Form1_Leave);
        this.MouseMove += new System.Windows.Forms.MouseEventHandler(this.Form1_MouseMove);
        this.MinimumSizeChanged += new System.EventHandler(this.Form1_MinimumSizeChanged);
        this.Move += new System.EventHandler(this.Form1_Move);
        this.MouseCaptureChanged += new System.EventHandler(this.Form1_MouseCaptureChanged);
        this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.Form1_FormClosed);
        this.PaddingChanged += new System.EventHandler(this.Form1_PaddingChanged);
        this.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.Form1_KeyPress);
        this.ChangeUICues += new System.Windows.Forms.UICuesEventHandler(this.Form1_ChangeUICues);
        this.DockChanged += new System.EventHandler(this.Form1_DockChanged);
        this.GiveFeedback += new System.Windows.Forms.GiveFeedbackEventHandler(this.Form1_GiveFeedback);
        this.ImeModeChanged += new System.EventHandler(this.Form1_ImeModeChanged);
        this.Click += new System.EventHandler(this.Form1_Click);
        this.SystemColorsChanged += new System.EventHandler(this.Form1_SystemColorsChanged);
        this.QueryAccessibilityHelp += new System.Windows.Forms.QueryAccessibilityHelpEventHandler(this.Form1_QueryAccessibilityHelp);
        this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.Form1_FormClosing);
        this.RegionChanged += new System.EventHandler(this.Form1_RegionChanged);
        this.KeyUp += new System.Windows.Forms.KeyEventHandler(this.Form1_KeyUp);
        this.MarginChanged += new System.EventHandler(this.Form1_MarginChanged);
        this.TextChanged += new System.EventHandler(this.Form1_TextChanged);
        this.ResizeBegin += new System.EventHandler(this.Form1_ResizeBegin);
        this.HelpRequested += new System.Windows.Forms.HelpEventHandler(this.Form1_HelpRequested);
        this.LocationChanged += new System.EventHandler(this.Form1_LocationChanged);
        this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.Form1_KeyDown);
        this.BackColorChanged += new System.EventHandler(this.Form1_BackColorChanged);
        this.InputLanguageChanging += new System.Windows.Forms.InputLanguageChangingEventHandler(this.Form1_InputLanguageChanging);
        this.MenuStart += new System.EventHandler(this.Form1_MenuStart);
        this.MouseHover += new System.EventHandler(this.Form1_MouseHover);
        this.ResizeEnd += new System.EventHandler(this.Form1_ResizeEnd);
        this.DragOver += new System.Windows.Forms.DragEventHandler(this.Form1_DragOver);
        this.CausesValidationChanged += new System.EventHandler(this.Form1_CausesValidationChanged);
        this.MenuComplete += new System.EventHandler(this.Form1_MenuComplete);
        this.MaximumSizeChanged += new System.EventHandler(this.Form1_MaximumSizeChanged);
        this.ResumeLayout(false);
    }
    private System.Windows.Forms.Button button1;
}
public class FormEventAll
{
    [STAThread]
    static void Main()
    {
        Application.EnableVisualStyles();
        Application.Run(new Form1());
        MessageBox.Show("Click OK to finish");
    }
}

Cancel Form Closing event

using System;
using System.Drawing;
using System.Collections;
using System.ruponentModel;
using System.Windows.Forms;
using System.Data;
public class FormClosingEventCancle : System.Windows.Forms.Form
{
  private System.ruponentModel.Container components = null;
  public FormClosingEventCancle()
  {
    InitializeComponent();
    this.Closing += new System.ruponentModel.CancelEventHandler(this.FormClosingEventCancle_Closing);
  }
  protected override void Dispose( bool disposing )
  {
    if( disposing )
    {
      if (components != null) 
      {
        components.Dispose();
      }
    }
    base.Dispose( disposing );
  }
  private void InitializeComponent()
  {
    this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
    this.ClientSize = new System.Drawing.Size(280, 177);
  }
  [STAThread]
  static void Main() 
  {
    Application.Run(new FormClosingEventCancle());
  }
  private void FormClosingEventCancle_Closing(object sender, System.ruponentModel.CancelEventArgs e)
  {
    DialogResult dr = MessageBox.Show("Do you REALLY want to close this app?",
      "Closing event!", MessageBoxButtons.YesNo);
    if(dr == DialogResult.No)
      e.Cancel = true;
    else
      e.Cancel = false;    
  }
}

Form Key event

using System;
using System.Drawing;
using System.Collections;
using System.ruponentModel;
using System.Windows.Forms;
using System.Data;
public class FormMouseKeyEvent : System.Windows.Forms.Form
{
  private System.ruponentModel.Container components = null;
  public FormMouseKeyEvent()
  {
    this.KeyUp += new KeyEventHandler(OnKeyUp);
    InitializeComponent();
    CenterToScreen();
  }
  protected override void Dispose( bool disposing )
  {
    if( disposing )
    {
      if (components != null) 
      {
        components.Dispose();
      }
    }
    base.Dispose( disposing );    
  }
  private void InitializeComponent()
  {
    this.ruponents = new System.ruponentModel.Container();
    this.Size = new System.Drawing.Size(300,300);
    this.Text = "Form1";
  }
  [STAThread]
  static void Main() 
  {
    Application.Run(new FormMouseKeyEvent());
  }
  public void OnKeyUp(object sender, KeyEventArgs e)
  {
    MessageBox.Show(e.KeyCode.ToString(), "Key Pressed!");
  }
}

Form life time event: Closing, Load, Closed, Activated, Deactivate

using System;
using System.Drawing;
using System.Collections;
using System.ruponentModel;
using System.Windows.Forms;
using System.Data;
public class FormLifeTimeEvent : System.Windows.Forms.Form
{
  private System.ruponentModel.Container components = null;
  public FormLifeTimeEvent()
  {
    InitializeComponent();
    this.Closing += new System.ruponentModel.CancelEventHandler(this.FormLifeTimeEvent_Closing);
    this.Load += new System.EventHandler(this.FormLifeTimeEvent_Load);
    this.Closed += new System.EventHandler(this.FormLifeTimeEvent_Closed);
    this.Activated += new System.EventHandler(this.FormLifeTimeEvent_Activated);
    this.Deactivate += new System.EventHandler(this.FormLifeTimeEvent_Deactivate);
  }
  protected override void Dispose( bool disposing )
  {
    if( disposing )
    {
      if (components != null) 
      {
        components.Dispose();
      }
    }
    base.Dispose( disposing );
  }
  private void InitializeComponent()
  {
    this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
    this.ClientSize = new System.Drawing.Size(280, 177);
  }
  [STAThread]
  static void Main() 
  {
    Application.Run(new FormLifeTimeEvent());
  }
  private void FormLifeTimeEvent_Closing(object sender, System.ruponentModel.CancelEventArgs e)
  {
    Console.WriteLine("Closing event");
  }
  private void FormLifeTimeEvent_Load(object sender, System.EventArgs e) { 
      Console.WriteLine("Load event"); 
  }
  private void FormLifeTimeEvent_Activated(object sender, System.EventArgs e) { 
      Console.WriteLine("Activate event"); 
  }
  private void FormLifeTimeEvent_Deactivate(object sender, System.EventArgs e) { 
      Console.WriteLine("Deactivate event"); 
  }
  
  private void FormLifeTimeEvent_Closed(object sender, System.EventArgs e) { 
      Console.WriteLine("Closed event"); 
  }
}

Form mouse move event

using System;
using System.Drawing;
using System.Collections;
using System.ruponentModel;
using System.Windows.Forms;
using System.Data;
public class FormMouseMoveEvent : System.Windows.Forms.Form
{
  private System.ruponentModel.Container components = null;
  public FormMouseMoveEvent()
  {
    this.MouseMove += new MouseEventHandler(OnMouseMove);
    InitializeComponent();
  }
  protected override void Dispose( bool disposing )
  {
    if( disposing )
    {
      if (components != null) 
      {
        components.Dispose();
      }
    }
    base.Dispose( disposing );    
  }
  private void InitializeComponent()
  {
    this.ruponents = new System.ruponentModel.Container();
    this.Size = new System.Drawing.Size(300,300);
    this.Text = "Form1";
  }
  [STAThread]
  static void Main() 
  {
    Application.Run(new FormMouseMoveEvent());
  }
  protected void OnMouseMove(object sender, MouseEventArgs e)
  {
    this.Text = "Current Pos: (" + e.X + ", " + e.Y + ")";
  }
}

Form Mouse Up event

using System;
using System.Drawing;
using System.Collections;
using System.ruponentModel;
using System.Windows.Forms;
using System.Data;
public class FormMouseUpEvent : System.Windows.Forms.Form
{
  private System.ruponentModel.Container components = null;
  public FormMouseUpEvent()
  {
    this.MouseUp += new MouseEventHandler(OnMouseUp);
    InitializeComponent();
  }
  protected override void Dispose( bool disposing )
  {
    if( disposing )
    {
      if (components != null) 
      {
        components.Dispose();
      }
    }
    base.Dispose( disposing );    
  }
  private void InitializeComponent()
  {
    this.ruponents = new System.ruponentModel.Container();
    this.Size = new System.Drawing.Size(300,300);
    this.Text = "Form1";
  }
  [STAThread]
  static void Main() 
  {
    Application.Run(new FormMouseUpEvent());
  }
  protected void OnMouseUp(object sender, MouseEventArgs e)
  {
    // Which mouse button was clicked?
    if(e.Button == MouseButtons.Left)
      MessageBox.Show("Left click!");
    if(e.Button == MouseButtons.Right)
      MessageBox.Show("Right click!");
    if(e.Button == MouseButtons.Middle)
      MessageBox.Show("Middle click!");
  }
}

Form size changed event handler

using System;
using System.Drawing;
using System.Windows.Forms;
public class ControlDynamicSizeLocation : Form
{
  private Button btnShow = new Button();
  private Label lbl = new Label();
  int xButtonSize, yButtonSize;
  public ControlDynamicSizeLocation()
  {
    btnShow.Parent = this;
    btnShow.Text = "Show Button Properties";
    Size = new Size(400,400);
    xButtonSize = (int)(Font.Height * .75) * btnShow.Text.Length;
    yButtonSize = Font.Height * 2;
    btnShow.Size = new Size(xButtonSize, yButtonSize);
    btnShow.Click += new System.EventHandler(btnShow_Click);
    lbl.Text = "Control Size and Location - Dynamic";
    lbl.AutoSize = true;
    lbl.Parent = this;
    OnResize(EventArgs.Empty);
  }
  protected override void OnResize(EventArgs e)
  {
    base.OnResize(e);
    int xPosition = (int)(this.ClientSize.Width / 2) - (int)(xButtonSize / 2);
    int yPosition = (int)(this.ClientSize.Height / 2) - (int)(yButtonSize / 2);
    btnShow.Location = new Point(xPosition, yPosition);
  }
  static void Main() 
  {
    Application.Run(new ControlDynamicSizeLocation());
  }
  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("Font:" + btnShow.Font.ToString());
  }
}

Paint event

using System;
using System.Drawing;
using System.Collections;
using System.ruponentModel;
using System.Windows.Forms;
using System.Data;
public class PaintForm : System.Windows.Forms.Form
{
  private System.ruponentModel.Container components;
  public PaintForm()
  {
    InitializeComponent();
  }
  protected override void Dispose( bool disposing )
  {
    if( disposing )
    {
      if (components != null) 
      {
        components.Dispose();
      }
    }
    base.Dispose( disposing );
  }
  private void InitializeComponent()
  {
    this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
    this.ClientSize = new System.Drawing.Size(292, 273);
    this.Text = "DataGridExample";
    this.Resize += new System.EventHandler(this.PaintForm_Resize);
    this.Paint += new System.Windows.Forms.PaintEventHandler(this.PaintForm_Paint);
    }
  [STAThread]
  static void Main() 
  {
    Application.Run(new PaintForm());
  }
  private void PaintForm_Resize(object sender, System.EventArgs e)
  {
    Invalidate();
    Console.WriteLine("Resize");
  }
  private void PaintForm_Paint(object sender, System.Windows.Forms.PaintEventArgs e)
  {
    Graphics g = e.Graphics;
    g.DrawString("Text", 
      new Font("Times New Roman", 20), 
      new SolidBrush(Color.Black), 
      this.DisplayRectangle);    
  }
}

Paint one forms with two paint event handler

using System;
using System.Drawing;
using System.Windows.Forms;
   
class TwoPaintHandlers
{
     public static void Main()
     {
          Form form      = new Form();
          form.Text      = "Two Paint Handlers";
          form.BackColor = Color.White;
          form.Paint    += new PaintEventHandler(PaintHandler1);
          form.Paint    += new PaintEventHandler(PaintHandler2);
   
          Application.Run(form);
     }
     static void PaintHandler1(object objSender, PaintEventArgs pea)
     {
          Form     form = (Form)objSender;
          Graphics graphics = pea.Graphics;
   
          graphics.DrawString("First Paint Event Handler", form.Font, 
                          Brushes.Black, 0, 0);
     }
     static void PaintHandler2(object objSender, PaintEventArgs pea)
     {
          Form     form = (Form)objSender;
          Graphics graphics = pea.Graphics;
   
          graphics.DrawString("Second Paint Event Handler", form.Font, 
                          Brushes.Black, 0, 100);
     }
}

Paint two forms with one paint event handler

using System;
using System.Drawing;
using System.Windows.Forms;
   
class PaintTwoForms
{
     static Form form1, form2;
   
     public static void Main()
     {
          form1 = new Form();
          form2 = new Form();
   
          form1.Text      = "First Form";
          form1.BackColor = Color.White;
          form1.Paint    += new PaintEventHandler(MyPaintHandler);
   
          form2.Text      = "Second Form";
          form2.BackColor = Color.White;
          form2.Paint    += new PaintEventHandler(MyPaintHandler);
          form2.Show();
   
          Application.Run(form1);
     }
     static void MyPaintHandler(object objSender, PaintEventArgs pea)
     {
          Form     form = (Form)objSender;
          Graphics graphics = pea.Graphics;
          string   str;
   
          if(form == form1)
               str = "Hello from the first form";
          else
               str = "Hello from the second form";
   
          graphics.DrawString(str, form.Font, Brushes.Black, 0, 0);
     }
}

React to form resize event

using System;
using System.Drawing;
using System.Collections;
using System.ruponentModel;
using System.Windows.Forms;
using System.Data;
public class ResizeForm : System.Windows.Forms.Form
{
  private System.ruponentModel.Container components;
  public ResizeForm()
  {
    InitializeComponent();
  }
  protected override void Dispose( bool disposing )
  {
    if( disposing )
    {
      if (components != null) 
      {
        components.Dispose();
      }
    }
    base.Dispose( disposing );
  }
  private void InitializeComponent()
  {
    this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
    this.ClientSize = new System.Drawing.Size(292, 273);
    this.Resize += new System.EventHandler(this.ResizeForm_Resize);

  }
  [STAThread]
  static void Main() 
  {
    Application.Run(new ResizeForm());
  }
  private void ResizeForm_Resize(object sender, System.EventArgs e)
  {
    Invalidate();
    Console.WriteLine("Resize");
  }
}