如何在所有应用程序中仅使用 NumericPin 键盘? UWP

Posted

技术标签:

【中文标题】如何在所有应用程序中仅使用 NumericPin 键盘? UWP【英文标题】:How to use only NumericPin keyboard into all application? UWP 【发布时间】:2017-09-05 18:56:25 【问题描述】:

我在 UWP 中开发应用程序,架构 64x。使用 C#,W10 处于信息亭模式。

对于所有应用程序的所有输入,我只需要显示和使用数字键盘,但是当我在 TextBox 元素中使用 InputScope="NumericPin" 时,Windows 提供的键盘会显示 NumericPin 键盘,但是当控制失去焦点时,标准键盘会出现和消失。

我已经尝试过了,但它就像我解释的那样工作: https://msdn.microsoft.com/en-us/library/windows/apps/mt280229.aspx

我也考虑过使用外部键盘应用服务,它运行良好,但我的老板说这是最后一个资源。 http://chessware.ch/virtual-keyboard/index.php

我要找的是这样的:

每次都将 NumericPin 键盘用作静态显示。 唯一可用的键盘布局是 NumericPin 键盘。

我找到了这个相关的问题,但我说的和我一样: UWP VirtualKeyboard shows NumericPin layout in simple textbox

谢谢大家。

【问题讨论】:

【参考方案1】:

对于所有应用程序的所有输入,我只需要显示和使用数字键盘,但是当我在 TextBox 元素中使用 InputScope="NumericPin" 时,Windows 提供的键盘会显示 NumericPin 键盘,但是当控件暂时失去焦点时标准键盘出现又消失。

如您所说,windows提供的键盘和键盘类型由输入控件的InputScope属性决定。您可以手动设置InputScope 属性。但是,您无法为尚未确定InputScope 属性的输入控件设置键盘。

根据您的要求,我认为您可以在Application.Resources 中为输入控制设置全局style。如TextBox,RichEditBox等。

<Application.Resources>
    <Style TargetType="TextBox">
        <Setter Property="InputScope" Value="NumericPin"/>
    </Style>
</Application.Resources>

【讨论】:

真的你的解决方案和的效果是一样的,setter是在元素没有默认属性的时候用的。

以上是关于如何在所有应用程序中仅使用 NumericPin 键盘? UWP的主要内容,如果未能解决你的问题,请参考以下文章

如何在科尔多瓦 Android 应用程序中仅定位平板设备

如何使用 jquery 在 datalist 中仅采用最后五个选项并清除 datalist 中的所有其他选项?

从 api 获取所有数据以及如何在 swift ios 中仅在单元格上附加标题

如何在选择查询(MySQL)中仅消除连续重复而不是所有重复?

如何删除 R 中仅出现在一个变量级别且从不出现第二个变量级别的所有参与者?

如何在 IntelliJ 的 logcat 中仅过滤我的应用程序日志? [复制]