如何在 Windows Phone 键盘上获得提交按钮?

发布于 2024-11-18 18:15:10 字数 453 浏览 1 评论 0原文

我希望白色箭头出现在我的文本输入框中,以便用户除了敲击键盘或使用硬件后退按钮之外还有一种前进的方式。

搜索字段在系统 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 as False 。

I want the white arrow to appear in my text input boxes so users have a way of forward other than tapping away from the keyboard or using the hardware Back button.

The search fields do this in the system UI. How do I?

Here's my code
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 - ??
}

One quick note, I have tried AcceptsReturn as False also.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

格子衫的從容 2024-11-25 18:15:10

另外,我发现要获得搜索框具有的白色提交按钮,您可以将 InputScope 设置为“搜索”:

<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();
      }
}

Also, I found that to get the white submit button that the search box has you can set the InputScope to "search":

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

I still haven't figured out if this has any unintended side-effects.

For good measure here is the code to dismiss the keyboard in the KeyUp event:

void InputBox_KeyUp(object sender, System.Windows.Input.KeyEventArgs e)
{
      if (e.Key == Key.Enter)
      {
           this.Focus();
      }
}
猥琐帝 2024-11-25 18:15:10

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

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

Instead of handling the TextChanged method, handle the KeyUp method of the Textbox:

private void InputBox_KeyUp(object sender, System.Windows.Input.KeyEventArgs e)
{
      if (e.Key == Key.Enter)
      {
           //enter has been pressed
      }
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文