Jump to content
Xtreme .Net Talk

Recommended Posts

Posted

Hi,

 

I develop an application that have 20 windows forms with many TextBoxes.

All TextBoxes have the same validation...

I write in all classes the same validation like that:

 

 

 

		
	//if the user press a key down at txtDisplacement we check which one was pressed down
	#region KeyDownInTxtDisplacement code
	private void KeyDownInTxtDisplacement(object sender, System.Windows.Forms.KeyEventArgs e)
	{
		CheckWhichKeyDown(e);
	}
	#endregion



	//if the user press a key down at txtModel we check which one was pressed down
	#region KeyDownInTxtModel code
	private void KeyDownInTxtModel(object sender, System.Windows.Forms.KeyEventArgs e)
	{
		CheckWhichKeyDown(e);
	}
	#endregion



	//we check which key is pressed
	//if key Enter or Return or Tab is pressed
	//we go throw DoWhenOneTextBoxIsMarkedRed()
	#region CheckWhichKeyDown code
	private void CheckWhichKeyDown(System.Windows.Forms.KeyEventArgs e)
	{
		if(e.KeyCode==Keys.Enter || e.KeyCode==Keys.Return || e.KeyCode==Keys.Tab)
		{
			ValidateThis();
		}		
	}
	#endregion



	//when special key is press we enable the button
	#region ValidateThis code
	private void ValidateThis()
	{
		cmdAddToDataBase.Enabled = true;
	}
	#endregion

 

 

 

 

CheckWhichKeyDown and ValidateThis should be in one validation class.

How I can write a validation class that validate ALL TextBoxes from all classes.

Any ideas?

Or do you know some sample validation classes available on www?

 

 

gicio

Posted

Hi,

 

I write a new class... like this:

 

 

 



using System;
using System.Windows.Forms;
using System.Windows.Forms.ComponentModel;

namespace CarTrade
{
/// <summary>
/// Summary description for TestTextBox.
/// </summary>
public class TestTextBox : System.Windows.Forms.TextBox
{
	private bool booOnlyNumericCharsAllowed;
	private bool booSpecialKeyIsPress;
	
	public TestTextBox.
	{

	}

	//---------------------------------------------------------------
	//---------------------------PROPERTIES--------------------------
	//---------------------------------------------------------------

	//we allowed in the TestTextBox only numeric chars
	//when the user set the proparty OnlyOnlyNumericCharsAllowed
	//to true
	internal bool OnlyNumericCharsAllowed
	{
		get
		{
			//return the value how OnlyOnlyNumericCharsAllowed
			//is set
			return booOnlyNumericCharsAllowed;
		}
		set
		{
			if(value)
			{
				this.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.DoWhenKeyPress);
			}

			booOnlyNumericCharsAllowed = value;
		}
	}

	internal bool SpecialKeyIsPress
	{
		get
		{
			return booSpecialKeyIsPress;
		}
		set
		{
			if(value)
			{
				this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.CheckIfSpecialKeysArePressed);
			}

			booSpecialKeyIsPress = value;
		}
	}

	private void CheckIfSpecialKeysArePressed(object sender, System.Windows.Forms.KeyEventArgs e)
	{
		bool booEnter = e.KeyCode == Keys.Enter;
		bool booReturn = e.KeyCode==Keys.Return;
		bool booTab = e.KeyCode==Keys.Tab;

		if(booEnter || booReturn || booTab)
		{
	
		}
	}

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

		if(Text.Length == 0 && e.KeyChar == 48)
		{
			e.Handled = true;
		}
	}

}
}


 

 

 

Any coments are welcome!

 

 

gicio

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...