TextBox value validation Demo : Validation « GUI Windows Form « C# / C Sharp






TextBox value validation Demo

TextBox value validation Demo
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.Label lblName;
    private System.Windows.Forms.Label lblAddress;
    private System.Windows.Forms.Label lblOccupation;
    private System.Windows.Forms.Label lblAge;
    private System.Windows.Forms.Button btnOK;
    private System.Windows.Forms.Button btnHelp;
    private System.Windows.Forms.TextBox txtName;
    private System.Windows.Forms.TextBox txtAddress;
    private System.Windows.Forms.TextBox txtOccupation;
    private System.Windows.Forms.TextBox txtAge;

    public Form1()
    {
      InitializeComponent();
      this.btnOK.Enabled = false;

      this.txtAddress.Tag = false;
      this.txtAge.Tag = false;
      this.txtName.Tag = false;
      this.txtOccupation.Tag = false;

      this.txtName.Validating += new System.ComponentModel.CancelEventHandler(this.txtBoxEmpty_Validating);
      this.txtAddress.Validating += new System.ComponentModel.CancelEventHandler(this.txtBoxEmpty_Validating);
      this.txtOccupation.Validating += new System.ComponentModel.CancelEventHandler(this.txtOccupation_Validating);
      this.txtAge.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.txtAge_KeyPress);
      this.txtAge.Validating += new System.ComponentModel.CancelEventHandler(this.txtBoxEmpty_Validating);
      this.txtName.TextChanged += new System.EventHandler(this.txtBox_TextChanged);
      this.txtAddress.TextChanged += new System.EventHandler(this.txtBox_TextChanged);
      this.txtAge.TextChanged += new System.EventHandler(this.txtBox_TextChanged);
      this.txtOccupation.TextChanged += new System.EventHandler(this.txtBox_TextChanged);
    }
    private void InitializeComponent()
    {
      this.lblName = new System.Windows.Forms.Label();
      this.txtName = new System.Windows.Forms.TextBox();
      this.lblAge = new System.Windows.Forms.Label();
      this.btnOK = new System.Windows.Forms.Button();
      this.txtAge = new System.Windows.Forms.TextBox();
      this.txtAddress = new System.Windows.Forms.TextBox();
      this.lblAddress = new System.Windows.Forms.Label();
      this.lblOccupation = new System.Windows.Forms.Label();
      this.txtOccupation = new System.Windows.Forms.TextBox();
      this.btnHelp = new System.Windows.Forms.Button();
      this.SuspendLayout();
      // 
      // lblName
      // 
      this.lblName.Anchor = ((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
        | System.Windows.Forms.AnchorStyles.Left);
      this.lblName.Location = new System.Drawing.Point(8, 16);
      this.lblName.Name = "lblName";
      this.lblName.Size = new System.Drawing.Size(92, 23);
      this.lblName.TabIndex = 0;
      this.lblName.Text = "Name";
      // 
      // txtName
      // 
      this.txtName.Anchor = (((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
        | System.Windows.Forms.AnchorStyles.Left) 
        | System.Windows.Forms.AnchorStyles.Right);
      this.txtName.Location = new System.Drawing.Point(112, 16);
      this.txtName.Name = "txtName";
      this.txtName.Size = new System.Drawing.Size(176, 20);
      this.txtName.TabIndex = 5;
      this.txtName.Text = "";
      // 
      // lblAge
      // 
      this.lblAge.Anchor = ((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
        | System.Windows.Forms.AnchorStyles.Left);
      this.lblAge.Location = new System.Drawing.Point(8, 144);
      this.lblAge.Name = "lblAge";
      this.lblAge.Size = new System.Drawing.Size(92, 23);
      this.lblAge.TabIndex = 3;
      this.lblAge.Text = "Age";
      // 
      // btnOK
      // 
      this.btnOK.Anchor = (System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right);
      this.btnOK.Location = new System.Drawing.Point(296, 16);
      this.btnOK.Name = "btnOK";
      this.btnOK.TabIndex = 10;
      this.btnOK.Text = "OK";
      this.btnOK.Click += new System.EventHandler(this.btnOK_Click);
      // 
      // txtAge
      // 
      this.txtAge.Anchor = (((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
        | System.Windows.Forms.AnchorStyles.Left) 
        | System.Windows.Forms.AnchorStyles.Right);
      this.txtAge.Location = new System.Drawing.Point(112, 136);
      this.txtAge.Name = "txtAge";
      this.txtAge.Size = new System.Drawing.Size(176, 20);
      this.txtAge.TabIndex = 8;
      this.txtAge.Text = "";
      // 
      // txtAddress
      // 
      this.txtAddress.Anchor = ((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
        | System.Windows.Forms.AnchorStyles.Right);
      this.txtAddress.Location = new System.Drawing.Point(112, 40);
      this.txtAddress.Multiline = true;
      this.txtAddress.Name = "txtAddress";
      this.txtAddress.ScrollBars = System.Windows.Forms.ScrollBars.Both;
      this.txtAddress.Size = new System.Drawing.Size(176, 72);
      this.txtAddress.TabIndex = 6;
      this.txtAddress.Text = "";
      // 
      // lblAddress
      // 
      this.lblAddress.Anchor = ((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
        | System.Windows.Forms.AnchorStyles.Left);
      this.lblAddress.Location = new System.Drawing.Point(8, 40);
      this.lblAddress.Name = "lblAddress";
      this.lblAddress.Size = new System.Drawing.Size(92, 23);
      this.lblAddress.TabIndex = 1;
      this.lblAddress.Text = "Address";
      // 
      // lblOccupation
      // 
      this.lblOccupation.Anchor = ((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
        | System.Windows.Forms.AnchorStyles.Left);
      this.lblOccupation.Location = new System.Drawing.Point(8, 120);
      this.lblOccupation.Name = "lblOccupation";
      this.lblOccupation.Size = new System.Drawing.Size(92, 23);
      this.lblOccupation.TabIndex = 2;
      this.lblOccupation.Text = "Occupation";
      // 
      // txtOccupation
      // 
      this.txtOccupation.Anchor = (((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
        | System.Windows.Forms.AnchorStyles.Left) 
        | System.Windows.Forms.AnchorStyles.Right);
      this.txtOccupation.Location = new System.Drawing.Point(112, 112);
      this.txtOccupation.Name = "txtOccupation";
      this.txtOccupation.Size = new System.Drawing.Size(176, 20);
      this.txtOccupation.TabIndex = 7;
      this.txtOccupation.Text = "";
      // 
      // btnHelp
      // 
      this.btnHelp.Anchor = (System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right);
      this.btnHelp.CausesValidation = false;
      this.btnHelp.Location = new System.Drawing.Point(296, 48);
      this.btnHelp.Name = "btnHelp";
      this.btnHelp.TabIndex = 11;
      this.btnHelp.Text = "Help";
      this.btnHelp.Click += new System.EventHandler(this.btnHelp_Click);
      // 
      // Form1
      // 
      this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
      this.ClientSize = new System.Drawing.Size(376, 253);
      this.Controls.AddRange(new System.Windows.Forms.Control[] {this.btnHelp,
                                                                       this.btnOK,
                                                                       this.txtAge,
                                                                       this.txtOccupation,
                                     this.txtAddress,
                                     this.txtName,
                                     this.lblAge,
                                     this.lblOccupation,
                                     this.lblAddress,
                                     this.lblName});
      this.MinimumSize = new System.Drawing.Size(384, 280);
      this.Name = "Form1";
      this.Text = "TestBoxTest";
      this.ResumeLayout(false);

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

    private void btnOK_Click(object sender, System.EventArgs e)
    {
      string output;
      output = "Name: " + this.txtName.Text + "\r\n";
      output += "Address: " + this.txtAddress.Text + "\r\n";
      output += "Occupation: " + this.txtOccupation.Text + "\r\n";
      output += "Age: " + this.txtAge.Text;

      Console.WriteLine(output);
    }

    private void btnHelp_Click(object sender, System.EventArgs e)
    {
      string output;

      output = "Name = Your name" + "\r\n";
      output += "Address = Your address" + "\r\n";
      output += "Occupation = Only allowed value is 'Employee' or empty" + "\r\n";
      output += "Age = Your age";

      Console.WriteLine(output);
    }

    private void txtBoxEmpty_Validating(object sender, System.ComponentModel.CancelEventArgs e)
    {
      TextBox tb;

      tb = (TextBox)sender;

      if (tb.Text.Length == 0)
      {
        tb.BackColor = Color.Red;
        tb.Tag = false;
      }
      else
      {
        tb.BackColor = System.Drawing.SystemColors.Window;
        tb.Tag = true;
      }
      ValidateAll();
    }

    private void ValidateAll()
    {
      this.btnOK.Enabled = ((bool)(this.txtAddress.Tag) &&
        (bool)(this.txtAge.Tag) &&
        (bool)(this.txtName.Tag) &&
        (bool)(this.txtOccupation.Tag));
    }

    private void txtOccupation_Validating(object sender, System.ComponentModel.CancelEventArgs e)
    {
      TextBox tb = (TextBox)sender;

      if (tb.Text.CompareTo("Employee") == 0 || tb.Text.Length == 0)
      {
        tb.Tag = true;
        tb.BackColor = System.Drawing.SystemColors.Window;
      }
      else
      {
        tb.Tag = false;
        tb.BackColor = Color.Red;
      }

      ValidateAll();
    }

    private void txtAge_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
    {
      if ((e.KeyChar < 48 || e.KeyChar > 57) && e.KeyChar != 8)
        e.Handled = true; // Remove the character
    }

    private void txtBox_TextChanged(object sender, System.EventArgs e)
    {
      TextBox tb = (TextBox)sender;

      if (tb.Text.Length == 0 && tb != txtOccupation)
      {
        tb.Tag = false;
        tb.BackColor = Color.Red;
      }
      else if (tb == txtOccupation && (tb.Text.Length != 0 && tb.Text.CompareTo("Employee") != 0))
      {
        tb.Tag = false;
      }
      else
      {
        tb.Tag = true;
        tb.BackColor = SystemColors.Window;
      }

      ValidateAll();
    }
  }


           
       








Related examples in the same category

1.Error Provider to validate the text in a TextBoxError Provider to validate the text in a TextBox