如何让文本框只接受有效的电子邮件?

Nic*_*kz2 4 c# email textbox winforms visual-studio-2013

我希望我的文本框检查输入到文本框中的电子邮件是否有效。

到目前为止,我有:

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

但这仅测试它是否具有“@”和“.”。在里面。

有没有办法让它检查它是否有 .com 等,并且只有一个“@”?

小智 7

.NET 可以为您做到:

        try
        {
            var eMailValidator = new System.Net.Mail.MailAddress("xyz@blabla.com");
        }
        catch (FormatException ex)
        {
            // wrong e-mail address
        }
Run Code Online (Sandbox Code Playgroud)