UpDown Derived

image_pdfimage_print

/*
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_Derived
{
///

/// Summary description for UpDownDerived.
///

public class UpDownDerived : System.Windows.Forms.Form
{
///

/// Required designer variable.
///

private System.ComponentModel.Container components = null;
private System.Windows.Forms.Label label1;
private MyUpDownControl mDC = null ;
public UpDownDerived()
{
//
// Required for Windows Form Designer support
//
InitializeComponent();

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

///

/// Clean up any resources being used.
///

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

#region Windows Form Designer generated code
///

/// Required method for Designer support – do not modify
/// the contents of this method with the code editor.
///

private void InitializeComponent()
{
this.mDC = new UpDown_Derived.MyUpDownControl();
this.label1 = new System.Windows.Forms.Label();
this.SuspendLayout();
//
// mDC
//
this.mDC.Items.Add(“FRANCE”);
this.mDC.Items.Add(“ITALY”);
this.mDC.Items.Add(“USA”);
this.mDC.Items.Add(“UK”);
this.mDC.Items.Add(“AUSTRALIA”);
this.mDC.Items.Add(“INDIA”);
this.mDC.Items.Add(“ZAMBIA”);
this.mDC.Items.Add(“MALASYIA”);
this.mDC.Location = new System.Drawing.Point(40, 40);
this.mDC.Name = “mDC”;
this.mDC.TabIndex = 0;
//
// label1
//
this.label1.Location = new System.Drawing.Point(16, 16);
this.label1.Name = “label1”;
this.label1.Size = new System.Drawing.Size(200, 16);
this.label1.TabIndex = 1;
this.label1.Text = “Derived DomainUpDown Controller”;
//
// UpDownDerived
//
this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
this.ClientSize = new System.Drawing.Size(248, 85);
this.Controls.AddRange(new System.Windows.Forms.Control[] {
this.label1,
this.mDC});
this.Name = “UpDownDerived”;
this.Text = “My Domain Controller”;
this.Load += new System.EventHandler(this.UpDownDerived_Load);
this.ResumeLayout(false);

}
#endregion

///

/// The main entry point for the application.
///

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

private void UpDownDerived_Load(object sender, System.EventArgs e)
{
}
}
///

/// Summary description for MyUpDownControl.
///

public class MyUpDownControl : System.Windows.Forms.DomainUpDown
{
private int currentPos =0;
private string DisplayText =””;
public MyUpDownControl()
{
// Populate the control with items
Items.Add(“FRANCE”);
Items.Add(“ITALY”);
Items.Add(“USA”);
Items.Add(“UK”);
Items.Add(“AUSTRALIA”);
Items.Add(“INDIA”);
Items.Add(“ZAMBIA”);
Items.Add(“MALASYIA”);

}

public override void DownButton()
{
// Check if the Down Arrow is clicked
currentPos ++;
if ( currentPos >= Items.Count )
currentPos = 0 ;
UpdateEditText();
}

public override void UpButton()
{
// Check if the Up Arrow is clicked
currentPos — ;
if ( currentPos < 0 ) currentPos = Items.Count-1 ; UpdateEditText(); } protected override void UpdateEditText() { // Update the EditBox DisplayText = (string)this.Items[currentPos ]; this.Text = DisplayText; } public void Sort() { if ( this.Sorted ) this.Sorted= false ; else this.Sorted= true ; if ( this.Sorted ) this.Sort() ; UpdateEditText() ; } } } [/csharp]