我的Windows手机应用程序上有一个按钮。我的命令按钮绑定到我的ViewModel中的RelayCommand:
<Button Command="{Binding DoSomethingCommand}" CommandParameter="aString"/>
当我按下按钮时,我看到DoSomethingCommand被正确调用。 但是当键盘启动时,我需要先单击按钮两次才能看到DoSomethingCommand被调用。第一次单击会导致键盘关闭,第二次单击会调用DoSomethingCommand。
请告诉我为什么键盘打开时行为会发生变化?
答案 0 :(得分:0)
我今天遇到了同样的问题。
为了更好地解释它:一个文本框被聚焦,键盘可见,一个按钮位于文本框下方。首次点击此按钮,取消文本框并关闭键盘。再次点击按钮,会触发点击事件。
要解决此问题,我将MyTextBox.IsEnabled
设置为false
,然后在下一行中返回true
。将其设置为false,将其取消。再次将其设置为true,使其再次可用。用户不会注意到,键盘关闭,按钮第一次可以点击。
或者,可以在离开文本框焦点后将焦点设置为按钮。