2011-01-09 47 views
1

我正在使用需要數據連接的Windows Phone 7應用程序。如果沒有,它會彈出錯誤消息。無法覆蓋在Windows Phone 7着陸頁上的返回按鈕

根據應用商店的要求,我需要更改後退按鈕的默認行爲來首先關閉彈出窗口,而不是立即返回。

因此,我找到了以下代碼,該代碼無處不在,但登錄頁面的除外。

protected override void OnBackKeyPress(System.ComponentModel.CancelEventArgs e) 
     { 
      e.Cancel = true; 
      base.OnBackKeyPress(e); 
     } 

OnBackKeyPress事件甚至不會在着陸頁上被觸發。它只是退出應用程序。我的着陸頁是PhoneApplicationPage,與其他地方一樣。我無法弄清楚爲什麼會發生這種情況。有任何想法嗎?

+0

我無法重新創建您的問題。如果你在`e.Cancel = true;`行有一個斷點,這個命令就會被觸發。另外,我希望上面的代碼也是例如。您需要添加代碼才能解除彈出窗口。 – 2011-01-09 22:02:08

+0

@Matt - 是的,上面的代碼只是一個例子。在我的代碼中的其他地方,斷點被擊中。但是,在着陸頁上(一個加載到數據透視控件的電話應用頁面),我無法啓動該事件。它只是退出應用程序。 – Neil 2011-01-10 02:27:56

回答

0

你說

的PhoneApplicationPage裝入pivotcontrol

你的意思是周圍的其他方式?樞軸應該在頁面中,而不是其他方式。如果你在頁面中有一個頁面(這實際上是頁面 - >樞軸 - >頁面),那麼最外面的頁面將獲得OnBackKeyPress,而不是內部頁面。

就像馬特說的,在這一點上,我們需要看到真實的代碼來幫助你進一步。

0

雖然這可能不是您的問題的直接答案,但請記住,其他要求之一是,當用戶啓動您的應用程序,然後再按一次,他應該總是退出應用程序。如果第一次後退按鈕將導致關閉對話框,但不退出應用程序,則可能無法通過驗證。