这是我的代码不起作用:
TheTextBox.InputScope = new InputScope();
TheTextBox.InputScope.Names.Add(
new InputScopeName( InputScopeNameValue.Number ) );
点击TextBox时没有显示特殊键盘。我刚拿到标准键盘。
我想让这个工作,但Windows 8显然不支持这个。我已经搜索了这个问题的答案,但只找到了改变XAML的解决方案。这对我来说不是一个解决方案,因为我不喜欢拥有一堆UserControl只是为了拥有各种输入范围。
我已将此代码添加到文本控件的Loaded事件处理程序中。正如一个互联网答案所暗示的那样,它仍然无法在那里发挥作用。
我尝试使用“Number”和“TelephoneNumber”,但都没有在代码中使用。
我正在使用Visual Studio 2012和Windows Store C#app项目。
感谢。
戴夫
答案 0 :(得分:3)
重新排序:
var inputScope = new InputScope();
inputScope.Names.Add(new InputScopeName( InputScopeNameValue.Number ) );
TheTextBox.InputScope = inputScope;
显然,一旦设置了InputScope
属性,它就不会观察/观察Names
列表中发生的任何更改。所以,在你的代码中,它总是空的。我已将其更改为创建范围Add
,然后在完成后设置。
它适用于我的测试。