单击按钮和虚拟键盘输入键Windows Phone 8

卡尔提克

我正在开发Windows Phone应用程序。我有一个登录屏幕,用户必须在其中输入用户名,然后单击UI中的LOGIN按钮或电话的虚拟键盘中的Enter键。我分别捕获了两个事件。LOGIN按钮具有一个“ Click”事件,该事件使用户登录,并且虚拟键盘中的Enter键存在一个“ KeyDown”事件,该事件的代码与Click事件的代码相同。事件运行正常。一旦按下登录按钮或回车键,它将使用户登录。但仅在两次按下登录按钮或Enter键时。该事件在第一次单击中被捕获(我看到页面正在刷新),但是只有第二次单击才将用户带入应用程序。这个问题有什么想法吗?之前我没有LOGIN按钮,仅使用虚拟键盘中的Enter键,第一次单击时一切正常

问候卡尔西克

弗拉基米尔·梅岑采夫(Vladimir Mezentsev)

刚刚创建了运行良好的简单示例,请尝试重现它。Xaml:

<StackPanel Orientation="Horizontal">
    <TextBox KeyDown="TextBox_KeyDown"/>
    <Button Click="Button_Click" VerticalAlignment="Top"/>
</StackPanel>

后台代码:

private void TextBox_KeyDown(object sender, KeyRoutedEventArgs e)
{
    if (e.Key == Windows.System.VirtualKey.Enter || e.Key == Windows.System.VirtualKey.Accept)
        HandleAll();
}

private void Button_Click(object sender, RoutedEventArgs e)
{
    HandleAll();
}

private void HandleAll()
{
    //Hit breakpoint here
}

单击“按钮”或“键盘输入”时,每次都会调用“ HandleAll”方法。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章