隐藏屏幕键盘而不在另一个元素上使用.focus()

时间:2014-02-22 12:08:10

标签: c# xaml windows-phone-8 keyboard

我正在为WindowsPhone 8平台开发一个模仿on-screen key pad功能的应用程序。

我想使用TextBox在屏幕上显示字符,我想使用另一个使用按钮和事件实现的键盘输入文本。

存在一个问题,因为当我点击TextBox时,屏幕上的键盘始终显示在所有内容的顶部。我知道禁用屏幕键盘的唯一方法是在事件中使用.Focus()方法。这不适合我,因为如果TextBox没有聚焦,我无法从中动态选择文本,并且当TextBox填满时它不会自动向下滚动。是否有任何其他方法可以禁用屏幕键盘,同时保持焦点在TextBox上,或者是否有任何方法可以在屏幕键盘上显示某些内容。我需要得到一些解决方案,因为这与我的最后一年项目有关。

3 个答案:

答案 0 :(得分:2)

似乎SomeElement.Focus()是您可以用来隐藏屏幕键盘的唯一方法,其中SomeElement是一个可聚焦和一个非文本控件。在WindowsPhone SDK的这个阶段,根据我的知识,你无法做其他事情。根据SO或其他互联网上的许多确认帖子和文章。

答案 1 :(得分:0)

根据我对您要执行的操作的理解,您只需将IsReadOnly属性设置为True

<TextBox IsReadOnly="True" ... />

答案 2 :(得分:0)

您可以使用

行隐藏键盘
    this.focus();
相关问题