I have the following program (C# VS 2005) for validating an email id entered in a textbox.
It works fine.
Namespace used -
using System.Text.RegularExpressions;
private void textBox1_Validating(object sender, CancelEventArgs e)
{
System.Text.RegularExpressions.Regex rEMail = new System.Text.RegularExpressions.Regex(@"^[a-zA-Z][\w\.-]{2,28}[a-zA-Z0-9]@[a-zA-Z0-9][\w\.-]*[a-zA-Z0-9]\.[a-zA-Z][a-zA-Z\.]*[a-zA-Z]$");
if (textBox1.Text.Length > 0)
{
if (!rEMail.IsMatch(textBox1.Text))
{
MessageBox.Show("E-Mail expected", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
textBox1.SelectAll();
e.Cancel = true;
}
}
}
When I clicked button1, it gave me the required output.
Note that I have restricted the no of characters upto @symbol like >=3 and <=30
But sir, I want some slight change.
1. I again dragged and dropped button2, button3 into my form.
Now if I click either button1 or button2 or button3 it is showing the massage box. This should be restricted. ie the error message should be shown only on the click of button1(ie my save button) and not on the click of other buttons.
2. after entering the mail id in the textbox and if I press the enter key, then it should show me the same error message box
3. if the textbox is empty and if I press enter key or button1(my save button)then also it should prompt me to enter an email id by showing the same message box.
Please help me telling what pieces of code I must write inside the following event handlers
1. private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
}
2. private void textBox1_Validating(object sender, CancelEventArgs e)
{
}
3. private void button1_Click(object sender, EventArgs e)
{
}
I am not sure whether all the above three event handlers are required , what all pieces of code I must write in each event handler or any additional event handlers are required(if so, what code I must write inside them ) to achieve the above mentioned functionality
Please help me.
Thanks and Regards,
-jm
Mathew JosephPosted Jan 21, 2008, 12:08 AM
Sir,
I tried the code inside the following event handler.
private void textBox1_Leave(object sender, EventArgs e)
{
}
First of all I am getting a compilation error as follows.
'System.EventArgs' does not contain a definition for 'Cancel'
But if I comment the line e.Cancel = true; It is working only when I press the tab key.
if the textbox is empty and if I press the tab, then it is not validating(by showing some message box)
How can I rectify this?
If I type something and press the enter key, nothing is happening(in the sense it is not showing any error message box)
Moreover can you please tell me if the textbox is empty and if I press tab key or enter key or button1(my save button)then also it should prompt me to enter an email id by showing the same message box.
Sir please give me a solution immediately
Guest UserPosted Jan 19, 2008, 6:45 PM