Windows Phone文本框以只读模式显示插入符号

时间:2014-02-19 08:03:20

标签: c# windows-phone-8 textbox

我在默认文本框中使用。我的要求是,我不希望键盘出现在文本框上。用户宁愿修改我gui的其他按钮中的文本。

但我希望用户可以选择插入索引并移动它,以便他们可以选择输入文本的位置。

所以,为了阻止键盘出现,我已经将文本框设置为只读。 但我不能让它以只读模式显示插入符索引。

我在.net框架文本框中看到,有一个名为iscaretvisibleinreadonly模式的属性。 但在Windows手机文本框中没有这样的东西。

1 个答案:

答案 0 :(得分:0)

如果您想不显示键盘,则需要在不使用TextBox的情况下构建解决方案。为了获得一致的跨应用程序体验,键盘始终显示在Windows Phone上,并且不受编程控制。

最近有人问question,但回答并不准确。

此时最佳答案可能是考虑应用程序的备用UI。

然而,黑客将尝试使用TextBlock来模拟基础知识。您需要测量每个角色的位置,并在点击TextBlock时,在两个角色之间放置一个矩形(然后使用动画开始闪烁)。如果文本可能不适合,则复杂性增加,边缘情况的机会也增加。此外,您可能希望从文本字段处理复制和粘贴等操作。

由于您的评论表明您要构建电话拨号键盘,我建议您考虑使用:

<TextBox InputScope="TelephoneCountryCode" />

结果将类似于:

Telephone Keypad on Windows phone

还有其他选项可用于记录here的电话键盘。

由于这款拨号键盘对于Windows Phone用户来说是一种标准体验,因此他们不需要在您的应用程序中学习另一个键盘,而且它的细微差别。

例如,在iOS上使用Google Voice,他们选择实施自己的键盘。但是,您可能会注意到它们不支持定位文本输入光标。用户可以粘贴数字并删除数字。