我有一个盒子,我想要输入仅由数字组成的密码(例如 ATM 卡 PIN 码),最好的方法是什么?

要求:

  • 密码(带有隐藏数字)
  • 输入数字作为默认(唯一?)键盘

我尝试过的:

我认为 InputScopes 是可行的方法,但我无法在密码框中设置输入范围。我什至尝试将密码 InputScope 放在普通的 TextBox 上,但这并没有掩盖文本框中字符的外观。建议?

有帮助吗?

解决方案

简短版本 - 据我所知,你还没有开箱即用。

您说的PasswordBox 不支持InputScope 是完全正确的。我本以为它继承自TextBox或者文本输入的共同祖先来获取InputScope,但它直接继承自Control。由于它是一个密封类,您也无法继承它并更改它的行为。我认为您也无法使用 ControlTemplate 来实现它。

因此,最好的选择可能是创建自己的控件来模仿 PasswordBox 的行为,包括显示的字符变成隐藏字符之前的第二个长时间延迟。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top