UpDown Control


   

/*
Professional Windows GUI Programming Using C#
by Jay Glynn, Csaba Torok, Richard Conway, Wahid Choudhury, 
   Zach Greenvoss, Shripad Kulkarni, Neil Whitlow

Publisher: Peer Information
ISBN: 1861007663
*/
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;

namespace UpDown
{
    /// <summary>
    /// Summary description for UpDown.
    /// </summary>
    public class UpDown : System.Windows.Forms.Form
    {
      private System.Windows.Forms.Button button2;
      private System.Windows.Forms.TextBox textBox1;
      private System.Windows.Forms.Button button1;
      private System.Windows.Forms.DomainUpDown UPDOWN_DOMAIN;
      private System.Windows.Forms.Label label1;
        /// <summary>
        /// Required designer variable.
        /// </summary>
        private System.ComponentModel.Container components = null;

        public UpDown()
        {
            //
            // Required for Windows Form Designer support
            //
            InitializeComponent();

            //
            // TODO: Add any constructor code after InitializeComponent call
            //
        }

        /// <summary>
        /// Clean up any resources being used.
        /// </summary>
        protected override void Dispose( bool disposing )
        {
            if( disposing )
            {
                if (components != null) 
                {
                    components.Dispose();
                }
            }
            base.Dispose( disposing );
        }

        #region Windows Form Designer generated code
        /// <summary>
        /// Required method for Designer support - do not modify
        /// the contents of this method with the code editor.
        /// </summary>
        private void InitializeComponent()
        {
         this.button2 = new System.Windows.Forms.Button();
         this.textBox1 = new System.Windows.Forms.TextBox();
         this.button1 = new System.Windows.Forms.Button();
         this.UPDOWN_DOMAIN = new System.Windows.Forms.DomainUpDown();
         this.label1 = new System.Windows.Forms.Label();
         this.SuspendLayout();
         // 
         // button2
         // 
         this.button2.Location = new System.Drawing.Point(136, 80);
         this.button2.Name = "button2";
         this.button2.TabIndex = 8;
         this.button2.Text = "Add Item";
         // 
         // textBox1
         // 
         this.textBox1.Location = new System.Drawing.Point(24, 80);
         this.textBox1.Name = "textBox1";
         this.textBox1.TabIndex = 7;
         this.textBox1.Text = "";
         // 
         // button1
         // 
         this.button1.Location = new System.Drawing.Point(264, 40);
         this.button1.Name = "button1";
         this.button1.Size = new System.Drawing.Size(64, 23);
         this.button1.TabIndex = 6;
         this.button1.Text = "Remove";
         // 
         // UPDOWN_DOMAIN
         // 
         this.UPDOWN_DOMAIN.BackColor = System.Drawing.Color.FromArgb(((System.Byte)(255)), ((System.Byte)(192)), ((System.Byte)(192)));
         this.UPDOWN_DOMAIN.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((System.Byte)(0)));
         this.UPDOWN_DOMAIN.ForeColor = System.Drawing.SystemColors.HotTrack;
         this.UPDOWN_DOMAIN.Location = new System.Drawing.Point(24, 40);
         this.UPDOWN_DOMAIN.Name = "UPDOWN_DOMAIN";
         this.UPDOWN_DOMAIN.Size = new System.Drawing.Size(232, 26);
         this.UPDOWN_DOMAIN.Sorted = true;
         this.UPDOWN_DOMAIN.TabIndex = 5;
         this.UPDOWN_DOMAIN.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
         this.UPDOWN_DOMAIN.UpDownAlign = System.Windows.Forms.LeftRightAlignment.Left;
         this.UPDOWN_DOMAIN.Wrap = true;
         // 
         // label1
         // 
         this.label1.Location = new System.Drawing.Point(24, 16);
         this.label1.Name = "label1";
         this.label1.Size = new System.Drawing.Size(136, 23);
         this.label1.TabIndex = 9;
         this.label1.Text = "UpDownDomain Control";
         // 
         // UpDown
         // 
         this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
         this.ClientSize = new System.Drawing.Size(344, 117);
         this.Controls.AddRange(new System.Windows.Forms.Control[] {
                                                                      this.label1,
                                                                      this.UPDOWN_DOMAIN,
                                                                      this.button1,
                                                                      this.button2,
                                                                      this.textBox1});
         this.Name = "UpDown";
         this.Text = "UpDownDomain Control";
         this.Load += new System.EventHandler(this.UpDown_Load);
         this.ResumeLayout(false);

      }
        #endregion

        /// <summary>
        /// The main entry point for the application.
        /// </summary>
        [STAThread]
        static void Main() 
        {
            Application.Run(new UpDown());
        }

        private void UpDown_Load(object sender, System.EventArgs e)
        {
            // Populate the UpDown Domain control with string objects
            UPDOWN_DOMAIN.Items.Add("Visual C#");
            UPDOWN_DOMAIN.Items.Add("Visual C++");
            UPDOWN_DOMAIN.Items.Add("Visual VB");
            UPDOWN_DOMAIN.Items.Add("Managed C++");
            UPDOWN_DOMAIN.Items.Add("Crystal Reports");
            UPDOWN_DOMAIN.Items.Add("MFC");
            UPDOWN_DOMAIN.Items.Add("ATL");
            UPDOWN_DOMAIN.Items.Add("COM");
            UPDOWN_DOMAIN.Items.Add("DCOM");
            UPDOWN_DOMAIN.Items.Add("COM+");
            UPDOWN_DOMAIN.Items.Add("SETUP");
            UPDOWN_DOMAIN.Items.Add("COMMAND LINE");
            UPDOWN_DOMAIN.Items.Add("WINDOWS SERVICE");
            UPDOWN_DOMAIN.Items.Add("WINDOWS LIBRARY");
            UPDOWN_DOMAIN.Items.Add("ASP .NET WEB");
            UPDOWN_DOMAIN.Items.Add("DATABASE APPLICATION");

        }

        private void button1_Click(object sender, System.EventArgs e)
        {
            // Select the Item that want to remove
            int nItemSel = UPDOWN_DOMAIN.SelectedIndex;
            if ( nItemSel >= 0 ) 
            {
                // Remove the item at the location
                UPDOWN_DOMAIN.Items.RemoveAt(nItemSel);
                // Update the control
                UPDOWN_DOMAIN.Update();
                // Clear the edit box
                UPDOWN_DOMAIN.Text = "" ; 
            }
        }

        private void button2_Click(object sender, System.EventArgs e)
        {
            if ( textBox1.Text == "" ) 
            {
                MessageBox.Show("Enter a string to add");
                return ;
            }
            // Add the new string the UpDownDomain control
            UPDOWN_DOMAIN.Items.Add(textBox1.Text);
            textBox1.Text = "" ; 
        }


    }
}


           
          


String based DomainUpDown (Spinner)


   


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

  public class UpDownForm : System.Windows.Forms.Form
  {
    private System.Windows.Forms.Label lblCurrSel;
    private System.Windows.Forms.Button btnGetSelections;
    private System.Windows.Forms.Label label1;
    private System.Windows.Forms.DomainUpDown domainUpDown;

    public UpDownForm()
    {
      InitializeComponent();
    }

    private void InitializeComponent()
    {
      this.label1 = new System.Windows.Forms.Label ();
      this.domainUpDown = new System.Windows.Forms.DomainUpDown ();
      this.btnGetSelections = new System.Windows.Forms.Button ();
      this.lblCurrSel = new System.Windows.Forms.Label ();

      label1.Location = new System.Drawing.Point (8, 24);
      label1.Text = "Domain UpDown Control";
      label1.Size = new System.Drawing.Size (224, 32);
      label1.Font = new System.Drawing.Font ("Verdana", 12);
      label1.TabIndex = 2;

      domainUpDown.Location = new System.Drawing.Point (264, 24);
      domainUpDown.Text = "domainUpDown1";
      domainUpDown.Size = new System.Drawing.Size (168, 20);
      domainUpDown.TabIndex = 0;
      domainUpDown.Sorted = true;
      domainUpDown.Wrap = true;
      domainUpDown.SelectedItemChanged += new System.EventHandler (this.domainUpDown_SelectedItemChanged);
      domainUpDown.Items.AddRange(new object[4] {"B", "A", "C", "(D)"});
      btnGetSelections.Location = new System.Drawing.Point (16, 136);
      btnGetSelections.Size = new System.Drawing.Size (136, 24);
      btnGetSelections.TabIndex = 4;
      btnGetSelections.Text = "Get Current Selections";
      btnGetSelections.Click += new System.EventHandler (this.btnGetSelections_Click);

      lblCurrSel.Location = new System.Drawing.Point (176, 120);
      lblCurrSel.Size = new System.Drawing.Size (256, 48);
      this.Text = "Spin Controls";
      this.AutoScaleBaseSize = new System.Drawing.Size (5, 13);
      this.ClientSize = new System.Drawing.Size (448, 181);
      this.Controls.Add (this.lblCurrSel);
      this.Controls.Add (this.btnGetSelections);
      this.Controls.Add (this.label1);
      this.Controls.Add (this.domainUpDown);
    }
    static void Main() 
    {
      Application.Run(new UpDownForm());
    }

    protected void domainUpDown_SelectedItemChanged (object sender, System.EventArgs e)
    {
      this.Text = "You changed the string value...";
    }

    protected void btnGetSelections_Click (object sender, System.EventArgs e)
    {
      // Get info from updowns...
      lblCurrSel.Text = "String: " 
        + domainUpDown.Text ;
    }
  }

           
          


Numeric value based Up Down (Spinner)


   


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

  public class UpDownForm : System.Windows.Forms.Form
  {
    private System.Windows.Forms.Label lblCurrSel;
    private System.Windows.Forms.Button btnGetSelections;
    private System.Windows.Forms.Label label1;
    private System.Windows.Forms.NumericUpDown numericUpDown;

    public UpDownForm()
    {
      InitializeComponent();
    }
    private void InitializeComponent()
    {
      this.label1 = new System.Windows.Forms.Label ();
      this.numericUpDown = new System.Windows.Forms.NumericUpDown ();
      this.btnGetSelections = new System.Windows.Forms.Button ();
      this.lblCurrSel = new System.Windows.Forms.Label ();
      numericUpDown.BeginInit ();

      label1.Location = new System.Drawing.Point (8, 80);
      label1.Text = "Numeric UpDown Control";
      label1.Size = new System.Drawing.Size (232, 32);
      label1.Font = new System.Drawing.Font ("Verdana", 12);
      label1.TabIndex = 3;
      numericUpDown.Location = new System.Drawing.Point (264, 80);
      numericUpDown.Maximum = new decimal (5000);
      numericUpDown.Size = new System.Drawing.Size (168, 20);
      numericUpDown.ThousandsSeparator = true;
      numericUpDown.TabIndex = 1;
      numericUpDown.UpDownAlign = System.Windows.Forms.LeftRightAlignment.Left;
      numericUpDown.ValueChanged += new System.EventHandler (this.numericUpDown_ValueChanged);

      btnGetSelections.Location = new System.Drawing.Point (16, 136);
      btnGetSelections.Size = new System.Drawing.Size (136, 24);
      btnGetSelections.TabIndex = 4;
      btnGetSelections.Text = "Get Current Selections";
      btnGetSelections.Click += new System.EventHandler (this.btnGetSelections_Click);
      lblCurrSel.Location = new System.Drawing.Point (176, 120);
      lblCurrSel.Size = new System.Drawing.Size (256, 48);
      this.Text = "Spin Controls";
      this.AutoScaleBaseSize = new System.Drawing.Size (5, 13);
      this.ClientSize = new System.Drawing.Size (448, 181);
      this.Controls.Add (this.lblCurrSel);
      this.Controls.Add (this.btnGetSelections);
      this.Controls.Add (this.label1);
      this.Controls.Add (this.numericUpDown);
      numericUpDown.EndInit ();
    }
    static void Main() 
    {
      Application.Run(new UpDownForm());
    }

    protected void numericUpDown_ValueChanged (object sender, System.EventArgs e)
    {
      this.Text = "You changed the numeric value...";
    }

    protected void btnGetSelections_Click (object sender, System.EventArgs e)
    {
      lblCurrSel.Text =  "Number: " 
        + numericUpDown.Value;
    }
  }

           
          


Convert value from Numeric Dropdown to Int


   

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
{

   private System.Windows.Forms.NumericUpDown yearUpDown;
   private System.Windows.Forms.Button calculateButton;
   public Form1() {
      InitializeComponent();
   }
   private void calculateButton_Click( object sender, EventArgs e )
   {
      Console.WriteLine(Convert.ToInt32( yearUpDown.Value ));
   } 
   private void InitializeComponent()
   {
      this.yearUpDown = new System.Windows.Forms.NumericUpDown();
      this.calculateButton = new System.Windows.Forms.Button();
      ((System.ComponentModel.ISupportInitialize)(this.yearUpDown)).BeginInit();
      this.SuspendLayout();

      this.yearUpDown.Location = new System.Drawing.Point(84, 97);
      this.yearUpDown.Maximum = new decimal(new int[] {
            10,
            0,
            0,
            0});
      this.yearUpDown.Minimum = new decimal(new int[] {
            1,
            0,
            0,
            0});
      this.yearUpDown.Name = "yearUpDown";
      this.yearUpDown.ReadOnly = true;
      this.yearUpDown.Size = new System.Drawing.Size(100, 20);
      this.yearUpDown.TabIndex = 5;
      this.yearUpDown.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;
      this.yearUpDown.Value = new decimal(new int[] {
            1,
            0,
            0,
            0});
      this.calculateButton.Location = new System.Drawing.Point(196, 16);
      this.calculateButton.Name = "calculateButton";
      this.calculateButton.Size = new System.Drawing.Size(75, 23);
      this.calculateButton.TabIndex = 8;
      this.calculateButton.Text = "Calculate";
      this.calculateButton.Click += new System.EventHandler(this.calculateButton_Click);
      // 
      // interestCalculatorForm
      // 
      this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
      this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
      this.ClientSize = new System.Drawing.Size(289, 288);
      this.Controls.Add(this.calculateButton);
      this.Controls.Add(this.yearUpDown);
      this.Name = "interestCalculatorForm";
      this.Text = "Interest Calculator";
      ((System.ComponentModel.ISupportInitialize)(this.yearUpDown)).EndInit();
      this.ResumeLayout(false);
      this.PerformLayout();

   }

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

}



           
          


Unicode encoding: implified Chinese


   


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

   public class Unicode : System.Windows.Forms.Form {
      System.Windows.Forms.Label  myLabel = new System.Windows.Forms.Label();

      public Unicode()
      {
         this.SuspendLayout();

         this.myLabel.Font = new System.Drawing.Font("Microsoft Sans Serif", 50.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((System.Byte)(0)));
         this.myLabel.Location = new System.Drawing.Point(20, 20);
         this.myLabel.Size = new System.Drawing.Size(800, 800);

         this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
         this.ClientSize = new System.Drawing.Size(800, 200);
         this.Controls.AddRange(new System.Windows.Forms.Control[] {this.myLabel});
         this.Name = "Unicode";
         this.Text = "Unicode";
         this.Load += new System.EventHandler(this.Unicode_Load);
         this.ResumeLayout(false);
      }

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

      private void Unicode_Load(object sender, System.EventArgs e)
      {
         // Simplified Chinese
         char[] chinese = {&#039;u6B22&#039;, &#039;u8FCE&#039;, &#039;u4F7F&#039;, 
                             &#039;u7528&#039;, &#039;u0020&#039; };                   

         myLabel.Text = new string(chinese) + "Unicode" + &#039;u0021&#039;;
      }
   }

           
          


Unicode encoding: Spanish


   


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

   public class Unicode : System.Windows.Forms.Form {
      System.Windows.Forms.Label  myLabel = new System.Windows.Forms.Label();

      public Unicode()
      {
         this.SuspendLayout();

         this.myLabel.Font = new System.Drawing.Font("Microsoft Sans Serif", 50.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((System.Byte)(0)));
         this.myLabel.Location = new System.Drawing.Point(20, 20);
         this.myLabel.Size = new System.Drawing.Size(800, 800);

         this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
         this.ClientSize = new System.Drawing.Size(800, 200);
         this.Controls.AddRange(new System.Windows.Forms.Control[] {this.myLabel});
         this.Name = "Unicode";
         this.Text = "Unicode";
         this.Load += new System.EventHandler(this.Unicode_Load);
         this.ResumeLayout(false);
      }

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

      private void Unicode_Load(object sender, System.EventArgs e)
      {
         // Spanish
         char[] spanish = {&#039;u0042&#039;, &#039;u0069&#039;, &#039;u0065&#039;, 
                           &#039;u006E&#039;, &#039;u0076&#039;, &#039;u0065&#039;, &#039;u006E&#039;, &#039;u0069&#039;, 
                           &#039;u0064&#039;, &#039;u006F&#039;, &#039;u0020&#039;, &#039;u0061&#039;, &#039;u0020&#039; };                  

         myLabel.Text = new string(spanish) + "Unicode" + &#039;u0021&#039;;
      }
   }

           
          


Unicode encoding: Russian


   

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

   public class Unicode : System.Windows.Forms.Form {
      System.Windows.Forms.Label  myLabel = new System.Windows.Forms.Label();

      public Unicode()
      {
         this.SuspendLayout();

         this.myLabel.Font = new System.Drawing.Font("Microsoft Sans Serif", 50.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((System.Byte)(0)));
         this.myLabel.Location = new System.Drawing.Point(20, 20);
         this.myLabel.Size = new System.Drawing.Size(800, 800);

         this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
         this.ClientSize = new System.Drawing.Size(800, 200);
         this.Controls.AddRange(new System.Windows.Forms.Control[] {this.myLabel});
         this.Name = "Unicode";
         this.Text = "Unicode";
         this.Load += new System.EventHandler(this.Unicode_Load);
         this.ResumeLayout(false);
      }

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

      private void Unicode_Load(object sender, System.EventArgs e)
      {
         // Russian
         char[] russian = {  &#039;u0414&#039;, &#039;u043E&#039;, &#039;u0431&#039;, 
                             &#039;u0440&#039;, &#039;u043E&#039;, &#039;u0020&#039;, &#039;u043F&#039;, &#039;u043E&#039;, 
                             &#039;u0436&#039;, &#039;u0430&#039;, &#039;u043B&#039;, &#039;u043E&#039;, &#039;u0432&#039;,
                             &#039;u0430&#039;, &#039;u0442&#039;, &#039;u044A&#039;, &#039;u0020&#039;, &#039;u0432&#039;, 
                             &#039;u0020&#039; };                   

         myLabel.Text = new string(russian) + "Unicode" + &#039;u0021&#039;;
      }
   }