UWP的TextBox和PasswordBox使用输入范围更改触摸键盘InputScope
程序员文章站
2022-06-19 10:50:05
当你的应用运行在具有触摸屏的设备上时,触摸键盘可用于文本输入。当用户点击可编辑的输入字段(如 TextBox 或 PasswordBox)时,系统会调用触摸键盘。通过将文本控件的输入范围设置为与你期望用户输入的数据类型匹配,可以让用户在应用中更快捷地输入数据。输入范围会针对控件所预期的文本输入类型向 ......
当你的应用运行在具有触摸屏的设备上时,触摸键盘可用于文本输入。当用户点击可编辑的输入字段(如 TextBox 或 PasswordBox)时,系统会调用触摸键盘。通过将文本控件的输入范围设置为与你期望用户输入的数据类型匹配,可以让用户在应用中更快捷地输入数据。输入范围会针对控件所预期的文本输入类型向系统提供提示,以便系统可以为该输入类型提供专用的触摸键盘布局。
1.限制TextBox的输入范围
例如:限制手机号码只能输入数字InputScope="Number",并且是11位数字MaxLength="11"
<TextBox x:Name="tbMobile" InputScope="Number" MaxLength="11" PlaceholderText="手机号码" Margin="0,40,0,10" BorderThickness="0" RelativePanel.AlignLeftWithPanel="True" RelativePanel.AlignRightWithPanel="True" />
手机号码的输入框如图:
2.由于PasswordBox比较特殊,不能直接使用InputScope进行设置,只能在后台进行代码设置;并且 PasswordBox 上的 InputScope 属性仅支持 Password 和 NumericPin 值。其他任何值将被忽略。
1 InputScope inputScope = new InputScope(); 2 InputScopeName inputScopeName = new InputScopeName(); 3 inputScopeName.NameValue = InputScopeNameValue.NumericPin; 4 inputScope.Names.Add(inputScopeName); 5 txtPwd.InputScope = inputScope;
PasswordBox输入框设置NumericPin 和TextBox设置InputScope="Number"效果一致:
如果PasswordBox 上的 InputScope 设置 Password 则如图所示:
更多值请参考下列值:
UWP小白一个,欢迎指教!!
下一篇: UUID做主键,好还是不好?这是个问题