2013-02-05 34 views
0

當文本框焦點時按下後退按鈕的默認行爲是虛擬鍵盤關閉,文本框失去焦點。然後用戶再次按下回車鍵,窗口返回到上一個窗口。如何更改文本框失去焦點的默認行爲按下後退按鈕

但是,我想改變這種行爲。當按下後退鍵時,我希望窗口直接返回到上一個窗口,而忽略文本框是否處於焦點狀態。

我嘗試以下方法,

  1. 使用HardwareButtons.BackPressed事件,不工作(也許它僅適用於Direct3D的,我不知道)。按下後退按鈕時不會觸發該事件。

  2. 使用Textbox_onKeyUp,不起作用。在後退按鈕啓動期間,該事件未被觸發。

  3. 使用覆蓋無效OnBackKeyPress,不起作用。在其他情況下,它會按預期發射,但在文本框從焦點到失焦(鍵盤關閉)的情況下,事件不會被解除。

  4. 使用Textbox_OnLoseFocus,工作正常,但需要大量的條件檢查,因爲有時失去焦點並不意味着我想返回上一頁。

請幫忙。謝謝。

+2

這是預期的行爲,並可能會讓用戶煩躁,而不是有用。 –

+0

嗨奧斯汀,如果你使用諾基亞地圖,並點擊搜索按鈕,彈出一個窗口出來,然後你直接按回來按鈕,彈出窗口立即隱藏,而不是先關閉輸入。我相信在你只有一個文本框的情況下,讓用戶按兩次會太麻煩。 – user534498

+0

我同意@AustinSalonen我不知道微軟如何對此做出反應,如果你在iOS上嘗試過這一點,你的應用很可能會被拒絕。 – evanmcdonnal

回答

0

最後我沒有改變行爲,做出了不同的設計。但我仍然認爲在這種情況下,諾基亞的行爲是最方便用戶的。

相關問題