我已经研究了一下,似乎没有InputScope
用于xaml中的密码框。我正在设置一个PIN字段,只需要数字。如果图中我将需要检查C#中按下的键是否是数字,然后再将它写入框中。我将如何去做这件事?它也将检查长度是否为4,因此它可以自动登录,我已经知道该怎么做。检查密码框中输入的字符是否为数字
1
A
回答
1
您可以在PasswordBox
上订阅KeyDown
事件。最大长度可以通过设置MaxLength
属性来限制。
private void OnKeyDown(object sender, KeyEventArgs e)
{
if ((e.Key >= Key.D0 && e.Key <= Key.D9) || (e.Key >= Key.NumPad0 && e.Key <= Key.NumPad9))
return;
e.Handled = true;
}
0
@edited
Xaml:
<PasswordBox x:Name="passwordBox" MaxLength="4" PasswordChanged="PasswordBox_PasswordChanged"/>
private void PasswordBox_PasswordChanged(object sender, RoutedEventArgs e)
{
string password = "pass";
int result;
bool isPasswordNumeric = int.TryParse(password , out result);
if (!isPasswordNumeric)
return;
}
0
对密码的每次更改(即每次按键操作),都可以放弃所有非数字字符。用户的经验是控制只响应数字字符。
private void PasswordBox_PasswordChanged(object sender, RoutedEventArgs e)
{
var passwordBox = sender as PasswordBox;
string inputString = passwordBox.Password;
string cleanString = Regex.Replace(inputString, @"[^0-9]", "");
passwordBox.Password = cleanString;
return;
}
请注意,在正规表示法脱字符(^
)否定了搜索领域,即它取代比0-9为空字符串以外的所有字符。
使用Pawel Maga的帖子中的XAML。
相关问题
- 1. 检查输入是否是C++中的数字或字符串
- 2. 检查输入是否为数字C
- 3. 如何检查输入的密码是否为当前密码?
- 4. 检查输入的号码是否是jquery中的数字
- 5. 检查一行代码中的字符串是否为数字
- 6. 检查输入密码是否正确
- 7. 在红宝石中键入检查输入密钥是字符还是数字
- 8. 检查输入字段是否为空
- 9. 如何检查输入字符串是否为整数
- 10. JS检查输入字符串是否为有效代码并运行输入
- 11. Angular - 检查输入字段的值是否为数字
- 12. jquery/javascript - 检查输入(密码)是否有一些重复的字符
- 13. jquery检查数字是否输入isNaN
- 14. 检查用户输入的字符串是否在数组中
- 15. 检查输入字段中是否存在空字符串
- 16. C++如何检查双数字是否作为字母输入
- 17. 从用户输入密码,并检查它是否有字符,字母和数字
- 18. 检查数组中的字符是否为特定字符
- 19. 检查输入是否是一个循环中的字符串
- 20. 检查输入是否为字符串的方法
- 21. 检查用户输入的单个数值是否为数字
- 22. 如何检查从键盘输入的数字是否为c中的数字?
- 23. 检查参数是否为字符串
- 24. 检查输入框是否为焦点
- 25. 检查输入框是否为空
- 26. Tkinter检查输入框是否为空
- 27. JAVA密码检查程序 - 检查密码是否有2+数字+只有字母和数字
- 28. 如何检查输入的密码是否在botan加密中是否正确
- 29. 检查EditText输入是否为字符串
- 30. 如何检查用户输入是否为特定字符
这工作得很好!我出现了,我已经用电话号码文本框做了一次,甚至没有记住。我还添加了制表符和shift +制表符,以便在创建引脚和确认引脚时让用户可以选中并移动制表符。 –