如何更改文本框在按下后退按钮时失去焦点的默认行为

本文关键字:焦点 失去 默认 按钮 文本 何更改 | 更新日期: 2023-09-27 17:57:31

当文本框处于焦点时按下后退按钮的默认行为是虚拟键盘关闭,文本框失去焦点。用户再次按下返回键,窗口将返回到上一个窗口。

然而,我希望改变这种行为。当按下后退键时,我希望窗口直接返回到上一个窗口,忽略文本框是否聚焦。

我尝试了以下方法,

  1. 使用HardwareButtons.BackPressed事件,不起作用(也许它只适用于Direct3D,我不确定)。按下后退按钮时未触发事件。

  2. 使用Textbox_onKeyUp,不起作用。在后退按钮打开期间未触发事件。

  3. 使用override void OnBackKeyPress,无效。在其他情况下,它确实会按预期触发,但在文本框从对焦到失去焦点(键盘关闭)的情况下,事件不会触发。

  4. 使用Textbox_OnLocalFocus,效果很好,但需要大量的条件检查,因为有时失去焦点并不意味着我想回到上一页。

请帮忙。谢谢

如何更改文本框在按下后退按钮时失去焦点的默认行为

最后我没有改变行为,做了一个不同的设计。但我仍然认为,在这种情况下,诺基亚的行为是最人性化的。