|
-
Dec 29th, 2002, 03:25 PM
#1
Thread Starter
Member
[C#] Validation class for events?
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:
Code:
//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
-
Dec 29th, 2002, 04:37 PM
#2
Validation class?
Can't you simply derive a class from TextBox? It's not sealed.
All the buzzt
 CornedBee
"Writing specifications is like writing a novel. Writing code is like writing poetry."
- Anonymous, published by Raymond Chen
Don't PM me with your problems, I scan most of the forums daily. If you do PM me, I will not answer your question.
-
Jan 2nd, 2003, 02:01 PM
#3
Thread Starter
Member
Hi,
I write a new class... like this:
Code:
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
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|