Get all controls on a form window


   

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

    class MyForm : Form
  {
    private TextBox firstNameBox = new TextBox(); 
    private Button btnShowControls = new Button();
    
    MyForm()
    {
      this.Text = "Controls in the raw";

      // Add a new text box.
      firstNameBox.Text = "Chucky";
      firstNameBox.Size = new Size(150, 50);
      firstNameBox.Location = new Point(10, 10);
      this.Controls.Add(firstNameBox);

      // Add a new button.
      btnShowControls.Text = "Examine Controls collection";
      btnShowControls.Size = new Size(90, 90);
      btnShowControls.Location = new Point(10, 70);
      btnShowControls.Click += 
        new EventHandler(btnShowControls_Clicked);
      this.Controls.Add(btnShowControls);
      CenterToScreen();

    }
    protected void btnShowControls_Clicked(object sender, EventArgs e)
    {
      Control.ControlCollection coll = this.Controls;
      foreach(Control c in coll) {
        if(c != null)
          Console.WriteLine(c.Text, "Index numb: " + coll.GetChildIndex(c, false));   
      }
    }

        public static int Main(string[] args)
        {
      Application.Run(new MyForm());
      return 0;
        }
    }


           
          


Control style: resize and redraw


   


  using System;
  using System.Drawing;
  using System.Collections;
  using System.ComponentModel;
  using System.Windows.Forms;
  using System.Data;

  public class Form1 : System.Windows.Forms.Form
  {
    private System.Windows.Forms.Button btnGetStyles;
    private System.ComponentModel.Container components;

    public Form1()
    {
      InitializeComponent();
      SetStyle(ControlStyles.ResizeRedraw, true);
    }

    protected override void Dispose( bool disposing )
    {
      if( disposing )
      {
        if (components != null) 
        {
          components.Dispose();
        }
      }
      base.Dispose( disposing );
    }

    private void InitializeComponent()
    {
      this.btnGetStyles = new System.Windows.Forms.Button();
      this.btnGetStyles.Location = new System.Drawing.Point(24, 64);
      this.btnGetStyles.Size = new System.Drawing.Size(160, 23);
      this.btnGetStyles.TabIndex = 0;
      this.btnGetStyles.Text = "Get Form Styles";
      this.btnGetStyles.Click += new System.EventHandler(this.btnGetStyles_Click);
      this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
      this.ClientSize = new System.Drawing.Size(211, 104);
      this.Controls.AddRange(new System.Windows.Forms.Control[] {this.btnGetStyles});
      this.Text = "A Form with Style!";

    }
    [STAThread]
    static void Main() 
    {
      Application.Run(new Form1());
    }

    private void btnGetStyles_Click(object sender, System.EventArgs e)
    {
      MessageBox.Show(GetStyle(ControlStyles.ResizeRedraw).ToString(), 
        "Do you have ResizeRedraw?");
    }

  }


           
          


Load cursor file(*.cur)

   
 

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;


public class Form1 : Form {
    public Form1() {
        this.SuspendLayout();
        this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
        this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
        this.ClientSize = new System.Drawing.Size(292, 268);
        this.Paint += new System.Windows.Forms.PaintEventHandler(this.Form1_Paint);
        this.MouseMove += new System.Windows.Forms.MouseEventHandler(this.Form1_MouseMove);
        this.ResumeLayout(false);
    }

    private void Form1_MouseMove(object sender, MouseEventArgs e) {
        Point p = new Point(e.X, e.Y);
        Rectangle r;

        if (new Rectangle(0, 0, 100, 100).Contains(p))
            this.Cursor = new Cursor("MyCursor.cur");
        else if (new Rectangle(100, 0, 100, 100).Contains(p))
            this.Cursor = Cursors.Hand;
        else if (new Rectangle(0, 100, 100, 100).Contains(p))
            this.Cursor = Cursors.VSplit;
        else if (new Rectangle(100, 100, 100, 100).Contains(p))
            this.Cursor = Cursors.UpArrow;
        else
            this.Cursor = Cursors.Default;
    }

    private void Form1_Paint(object sender, PaintEventArgs e) {
        Graphics g = e.Graphics;
        g.FillRectangle(Brushes.Blue, 0, 0, 100, 100);
        g.FillRectangle(Brushes.Red, 100, 0, 100, 100);
        g.FillRectangle(Brushes.Yellow, 0, 100, 100, 100);
        g.FillRectangle(Brushes.Green, 100, 100, 100, 100);
    }
    static void Main() {
        Application.EnableVisualStyles();
        Application.Run(new Form1());
    }
}

    


Set form window cursor

   


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;
using System.IO;

public class Form1 : Form
{

  public Form1() {
        InitializeComponent();
    try
    {
      this.Cursor = AdvancedCursors.Create(Path.Combine(Application.StartupPath, "blob.ani"));
    }
    catch (Exception err)
    {
      MessageBox.Show(err.Message);
    }
  }

  private void InitializeComponent()
  {
    this.SuspendLayout();

    this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
    this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
    this.ClientSize = new System.Drawing.Size(292, 266);
    this.Text = "Form1";
    this.ResumeLayout(false);
  }


  [STAThread]
  static void Main()
  {
    Application.EnableVisualStyles();
    Application.Run(new Form1());
  }

}

public class AdvancedCursors
{

  [DllImport("User32.dll")]
  private static extern IntPtr LoadCursorFromFile(String str);

  public static Cursor Create(string filename)
  {
    IntPtr hCursor = LoadCursorFromFile(filename);
    
    if (!IntPtr.Zero.Equals(hCursor))
    {
      return new Cursor(hCursor);
    }
    else
    {
      throw new ApplicationException("Could not create cursor from file " + filename);
    }
  }
}

           
          


Load animated cursor

   


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;
using System.IO;

public class Form1 : Form
{

  public Form1() {
        InitializeComponent();
    try
    {
      this.Cursor = AdvancedCursors.Create(Path.Combine(Application.StartupPath, "blob.ani"));
    }
    catch (Exception err)
    {
      MessageBox.Show(err.Message);
    }
  }

  private void InitializeComponent()
  {
    this.SuspendLayout();

    this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
    this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
    this.ClientSize = new System.Drawing.Size(292, 266);
    this.Text = "Form1";
    this.ResumeLayout(false);
  }


  [STAThread]
  static void Main()
  {
    Application.EnableVisualStyles();
    Application.Run(new Form1());
  }

}

public class AdvancedCursors
{

  [DllImport("User32.dll")]
  private static extern IntPtr LoadCursorFromFile(String str);

  public static Cursor Create(string filename)
  {
    IntPtr hCursor = LoadCursorFromFile(filename);
    
    if (!IntPtr.Zero.Equals(hCursor))
    {
      return new Cursor(hCursor);
    }
    else
    {
      throw new ApplicationException("Could not create cursor from file " + filename);
    }
  }
}

           
          


ComboBox Selected Item changed event

   

using System;
using System.Drawing;
using System.Windows.Forms;
public class SelectItem : Form {
  private RadioButton square = new RadioButton();
  private RadioButton circle = new RadioButton();
  private ComboBox color = new ComboBox();

  public SelectItem( ) {
    Text = "Select Item";
    square.Text = "Square";
    circle.Text = "Circle";
    color.Text = "Choose a color";

    Size = new Size(400,250);

    int w = 20;
    square.Location = new Point(w, 30);
    circle.Location = new Point(w += 10 + square.Width, 30);
    color.Location = new Point(w += 10 + circle.Width, 30);

    color.Items.Add("Red");
    color.Items.Add("Green");
    color.Items.Add("Blue");

    Controls.Add(square);
    Controls.Add(circle);
    Controls.Add(color);

    square.CheckedChanged += new EventHandler(Checked_Changed);
    circle.CheckedChanged += new EventHandler(Checked_Changed);
    color.SelectedIndexChanged += new EventHandler(Selected_Index);
  } 
  protected void Selected_Index(Object sender, EventArgs e) {
    if (color.SelectedItem.ToString() == "Red" )
      Console.WriteLine("It is red.");
    else if (color.SelectedItem.ToString() == "Green")
      Console.WriteLine("It is green.");
    else
      Console.WriteLine("It is Blue"); 
  }

  protected void Checked_Changed(Object sender, EventArgs e) {
    if (square.Checked)
      Console.WriteLine("It is rectangle");
    else
      Console.WriteLine("Ellipse");
  }
  static void Main() {
    Application.Run(new SelectItem());
  }
}