如何在Windows Phone键盘中添加提交按钮?

9
我希望在文本输入框中出现白色箭头,这样用户就可以有一种前进的方式,而不必点击键盘外或使用硬件“返回”按钮。
系统UI中的搜索字段可以实现此功能。我该怎么做?
以下是我的代码 XAML:
<TextBox x:Name="InputBox" InputScope="Text" AcceptsReturn="True" TextChanged="InputBox_TextChanged"/>

CS:

void InputBox_TextChanged(object sender, KeyEventArgs e)
{
    // e does not have Key property for capturing enter - ??
}

顺便提一下,我也试过将 AcceptsReturn 设为 False。

2个回答

10

另外,我发现要获取搜索框中白色的提交按钮,您可以将InputScope设置为"search":

<TextBox x:Name="InputBox" InputScope="Search" AcceptsReturn="False" KeyUp="InputBox_KeyUp"/>

我仍然没有弄清楚这是否会产生任何意外的副作用。

为了保险起见,这里是在KeyUp事件中关闭键盘的代码:

void InputBox_KeyUp(object sender, System.Windows.Input.KeyEventArgs e)
{
      if (e.Key == Key.Enter)
      {
           this.Focus();
      }
}

看起来搜索InputScope有一个非常不幸的副作用,即不支持自动更正。我想我会为此单独提出一个问题 :( - Subcreation

9

不要处理TextChanged方法,而是处理Textbox的KeyUp方法:

private void InputBox_KeyUp(object sender, System.Windows.Input.KeyEventArgs e)
{
      if (e.Key == Key.Enter)
      {
           //enter has been pressed
      }
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接