隐藏触摸键盘

时间:2012-05-09 12:03:39

标签: windows-phone-7 keyboard windows-phone-7.1

点击文本框时是否可以不显示系统键盘?我已经创建了自定义键盘,只能使用textblock,因为我不能删除句子的一部分。

2 个答案:

答案 0 :(得分:3)

如果您将IsReadOnly设置为true,则用户仍然可以选择TextBox中的文本进行复制粘贴,并且操作系统在选中时不会显示软件输入键盘。您仍然可以通过代码更改TextBox的内容。例如;

<TextBox x:Name="ExampleTextBox"
         IsReadOnly="True"
         Text="Initial Content" 
         GotFocus="ExampleTextBox_GotFocus"
         />

在你的代码背后;

private void ExampleTextBox_GotFocus(object sender, System.Windows.RoutedEventArgs e) {
  ExampleTextBox.Text += " ... focused!";
}

会阻止用户通过软件键盘输入文字,但每当他们将注意力集中到TextBox时,都会附加“......专注”。举例说明,但你明白了。

我建议的另一件事是重新设计TextBox。默认情况下,设置IsReadOnly时,TextBox将提供用户无法修改的视觉提示。这不是这种情况。

答案 1 :(得分:1)

如果用户触摸键盘,键盘将获得焦点。

你作为开发人员的唯一选择是抓住它并调用this.focus将焦点移离文本框。

但这意味着会出现闪烁,默认键盘会弹出并隐藏。

我知道这是因为我有一个键盘应用程序。没有其他办法。