2

现在我正在开发 Windows 8 Metro 应用程序。为此,我有一个带有文本框和确定按钮的弹出窗口。在虚拟键盘上单击“Enter”时,我需要隐藏虚拟键盘。如果我单击弹出键盘上的“确定”按钮会自动隐藏。

将此链接作为很好的参考(使用 HiddenField)。有没有办法在不使用“HiddenField”的情况下完成这项工作。提前致谢..

4

2 回答 2

4

好吧,终于找到了解决这个问题的方法。我只是在弹出窗口中将焦点从文本框更改为按钮。下面是示例代码。

public void FocusTextbox(object sender, EventArgs e)
    {
        // set focus to textbox on popup open
        Textbox.Focus(Windows.UI.Xaml.FocusState.Programmatic);
    }

public void Textbox_KeyDown(object sender, KeyRoutedEventArgs e)
    {
        // conforming the "Enter" button click
        if (e.Key == Windows.System.VirtualKey.Enter)
        {
            // change the focus to OK button
            this.OkButton.Focus(Windows.UI.Xaml.FocusState.Pointer);
        }
    }

在关闭弹出窗口之前更改焦点......现在效果很好......
并且将焦点更改为标签或文本块并没有隐藏虚拟键盘......

于 2012-10-29T15:36:52.403 回答
0

我也在寻找这个,但我首先找到了这种方法

于 2012-10-29T10:44:53.130 回答