Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How can I make a textbox only accept a valid email? [duplicate]

I would like my textbox to check if the email that is entered into the textbox is valid.

So far I have got:

if (!this.txtEmail.Text.Contains('@') || !this.txtEmail.Text.Contains('.')) 
{ 
    MessageBox.Show("Please Enter A Valid Email", "Invalid Email", MessageBoxButtons.OK, MessageBoxIcon.Error); 
}

But this only tests if it has a '@' and a '.' in it.

Is there a way to make it check to see if it has .com etc. and only one '@'?

like image 537
Nickz2 Avatar asked Mar 16 '23 07:03

Nickz2


1 Answers

.NET can do it for you:

  bool IsValidEmail(string eMail)
  {
     bool Result = false;

     try
     {
        var eMailValidator = new System.Net.Mail.MailAddress(eMail);

        Result = (eMail.LastIndexOf(".") > eMail.LastIndexOf("@"));
     }
     catch
     {
        Result = false;
     };

     return Result;
  }
like image 111
Jack Avatar answered Mar 23 '23 10:03

Jack