0

我在表单上有一个 TextEdit。其中包含网站地址文本字段、电话(美国)、电子邮件。我想从 .cs 文件中验证所有这些。请问有人可以帮助我吗?

WPF 标记:

<dxe:TextEdit x:Name="txtEmpFacebook" TabIndex="25" MaxLength="30" HorizontalAlignment="Left" Margin="606,0,0,3" VerticalAlignment="Bottom" Width="88" LostFocus="txtEmpFacebook_LostFocus"/>

<Label x:Name="lblEmpFacebookError" Content="*" Foreground="Red" HorizontalAlignment="Left" Margin="985,94,0,0" VerticalAlignment="Top" RenderTransformOrigin="13.467,-0.231" Grid.Row="1"/>

protected bool ValidateAllContactDetails()
        {
            bool isfocused = false;
            bool isValid = true;
            //Validate Contact First Name
            if (string.IsNullOrEmpty(txtEmpFirstName.Text))
            {
                isValid = false;
                lblEmpFirstNameError.Visibility = Visibility.Visible;
                if (!isfocused)
                {
                    isfocused = true;
                    txtEmpFirstName.Focus();

                }
            }
            else
            {
                lblEmpFirstNameError.Visibility = Visibility.Hidden;
            }
}

这适用于空文本并显示错误。但现在想验证现有代码中的网站 URL 格式、电话(美国)格式、电子邮件格式。任何人都可以帮助我吗?帮助赞赏!

4

2 回答 2

1

对于 Url Validation,请使用正则表达式,如下--->

^(ht|f)tp(s?)\:\/\/[0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*(:(0-9)*)*(\/?)([a-zA-Z0-9\-\.\?\,\'\/\\\+&%\$#_]*)?$

手机(美国)--->

/^\(?(\d{3})\)?[- ]?(\d{3})[- ]?(\d{4})$/; 

& 用于电子邮件验证--->

 ^([\w\.\-]+)@([\w\-]+)((\.(\w){2,3})+)$

以及如何使用这些正则表达式,看这里--->

http://msdn.microsoft.com/en-us/library/01escwtf.aspx

于 2013-05-17T14:04:21.813 回答
0

实际上,要获得邮箱地址和电话号码的验证权是一件复杂的事情,不是几行代码就能搞定的。更好地重用提供这些功能的 WPF 控件。

顺便说一句,不仅验证是有帮助的,而且还不能让用户在输入数据时出错,即控制用户可以按下哪些键。

所有这些功能的代码太大,无法在此处发布,但您可以在以下位置找到验证电子邮件和电话号码的 TextBoxes:
github.com/PeterHuberSg/WpfWindowsLib

以下是 2 个链接,描述了在进行此类验证时需要考虑的事项:
Codeproject: Email-Address-Validation-Explained-in-Detail
Codeport: Base-WPF-Window-Functionality-for-Data-Entry

于 2020-03-21T14:05:35.350 回答