using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using System.Text.RegularExpressions;
namespace Example78
{
///
/// Summary description for Form1.
///
public class Form1 : System.Windows.Forms.Form
{
private System.Windows.Forms.TextBox txtNumber;
///
/// Required designer variable.
///
private System.ComponentModel.Container components = null;
public Form1()
{
//
// 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.txtNumber = new System.Windows.Forms.TextBox();
this.SuspendLayout();
//
// txtNumber
//
this.txtNumber.Location = new System.Drawing.Point(88, 48);
this.txtNumber.Name = "txtNumber";
this.txtNumber.TabIndex = 0;
this.txtNumber.Text = "";
this.txtNumber.TextChanged += new System.EventHandler(this.txtNumber_TextChanged);
//
// Form1
//
this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
this.ClientSize = new System.Drawing.Size(292, 273);
this.Controls.Add(this.txtNumber);
this.Name = "Form1";
this.Text = "Form1";
this.ResumeLayout(false);
}
#endregion
///
/// The main entry point for the application.
///
[STAThread]
static void Main()
{
Application.Run(new Form1());
}
private bool IsNonNegativeInteger(string s)
{
/*foreach (char x in s)
{
if (!Char.IsDigit(x))
return false;
}
return true;*/
return new Regex("^[0-9]*$").IsMatch(s);
}
private void txtNumber_TextChanged(object sender, System.EventArgs e)
{
if (txtNumber.Text.Length > 0)
{
if (!IsNonNegativeInteger(txtNumber.Text))
{
MessageBox.Show("Error");
txtNumber.Text = txtNumber.Text.Substring(0,
txtNumber.Text.Length - 1);
txtNumber.SelectionStart = txtNumber.Text.Length;
txtNumber.Focus();
}
}
}
}
}