Windows Phone的键盘逗号 - 点冲突(Windows Phone keyboard co

2019-10-18 05:38发布

我想用数字键盘( InputScope=Number ),但要显示“”而不是“” 在左下方角落,因为它是在土耳其文小数点分隔符。 键盘布局根据即使我力的文化在这样的代码手机语言出现: System.Globalization.CultureInfo.DefaultThreadCurrentCulture = new CultureInfo("tr-TR"); System.Globalization.CultureInfo.DefaultThreadCurrentUICulture = new CultureInfo("tr-TR"); System.Globalization.CultureInfo.DefaultThreadCurrentCulture = new CultureInfo("tr-TR"); System.Globalization.CultureInfo.DefaultThreadCurrentUICulture = new CultureInfo("tr-TR");

我怎样才能在左下方角落强制数字键盘,只有“”?

或者至少,我怎么能检测上KeyEventArgs两个角色之间的区别? 因为这两个回报未知的密码(以及明显相同的密钥),我不能想出一个办法来区分他们,当用户按下?

Answer 1:

既然你无法改变键盘的文化,你有两个选择:

  1. 钩KEYUP如果邀请码是未知的,然后你得到来寻。 要么 ,
  2. 勾框TextChanged并检查最后一个字母,看它是否是一个。 或者,并根据需要更换(请注意,你要重新触发框TextChanged如果你更新框TextChanged文本)

例如:

    private void txt_KeyUp(object sender, System.Windows.Input.KeyEventArgs e)
    {
        if (e.Key == System.Windows.Input.Key.Unknown)
        {
            txt.Text = txt.Text.Replace('.', ',');

            // reset cursor position to the end of the text (replacing the text will place
            // the cursor at the start)
            txt.Select(txt.Text.Length, 0);
        }
    } 


Answer 2:

这实际上是手机本身的设置。 当区域被设定到具有逗号小数点分隔符和键盘的区域中,它会显示逗号。 见与法国区和法语键盘下面的截图



文章来源: Windows Phone keyboard comma - dot conflict