按钮命令仅在第二次按下时调用

时间:2014-10-30 05:51:42

标签: windows-phone-8.1

我的Windows手机应用程序上有一个按钮。我的命令按钮绑定到我的ViewModel中的RelayCommand:

<Button Command="{Binding DoSomethingCommand}" CommandParameter="aString"/>

当我按下按钮时,我看到DoSomethingCommand被正确调用。 但是当键盘启动时,我需要先单击按钮两次才能看到DoSomethingCommand被调用。第一次单击会导致键盘关闭,第二次单击会调用DoSomethingCommand。

请告诉我为什么键盘打开时行为会发生变化?

1 个答案:

答案 0 :(得分:0)

我今天遇到了同样的问题。

为了更好地解释它:一个文本框被聚焦,键盘可见,一个按钮位于文本框下方。首次点击此按钮,取消文本框并关闭键盘。再次点击按钮,会触发点击事件。

要解决此问题,我将MyTextBox.IsEnabled设置为false,然后在下一行中返回true。将其设置为false,将其取消。再次将其设置为true,使其再次可用。用户不会注意到,键盘关闭,按钮第一次可以点击。

或者,可以在离开文本框焦点后将焦点设置为按钮。