我目前正在开发 Windows 窗体应用程序。我如何在 visual studio (C#) 中为我的密码文本框创建验证,它只允许包含以下文本:
- 至少一个大写
- 至少一个小写
- 至少一个符号
- 必须超过8个字符
最佳答案
因为它是一个 Windows 窗体应用程序,您可以在代码中进行验证:
string password = textBoxPassword.Text;
if (password.Length > 8 && // Must be above 8 characters
password.Any(char.IsUpper) && //At least one uppercase
password.Any(char.IsLower) && //At least one lowercase
password.Any(char.IsSymbol) //At least one symbol
)
{
//Valid password
}
else
{
//Invalid password
}
您可以针对提交按钮(Button_Click 事件)或 TextBox TextChanging 使用此代码。您可以将其提取为如下方法:
private bool IsValidPassword(string password)
{
return (password.Length > 8 &&
password.Any(char.IsUpper) &&
password.Any(char.IsLower) &&
password.Any(char.IsSymbol)
);
}
例如,如果您想验证 Button_Click 上的文本,则:
private void button1_Click(object sender, EventArgs e)
{
if(IsValidPassword(textboxPassword.Text))
{
//valid password
}
else
{
//invalid password
}
}
编辑:
如果你想要密码中的数字,那么你可以添加一个额外的支票,例如:
password.Any(char.IsDigit)
检查 "!@#"
添加检查。
password.Any(char.IsPunctuation)
关于c# - 文本框验证 #2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13639526/