Jon*_*nna 4 windows windows-phone-7
在Windows Phone 7中,有没有办法知道在导航到的页面中是否按下了背面?我知道我们可以拦截当前页面,但我需要知道在我导航到的页面中.即如果有2页说第1页和第2页,则在第2页按下后退按钮.我需要知道第1页是否按下了后退按钮.我需要在第1页的后退按钮上运行一些东西.
小智 25
protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
{
base.OnNavigatedTo(e);
if (e.NavigationMode == System.Windows.Navigation.NavigationMode.Back)
...
}
Run Code Online (Sandbox Code Playgroud)
这是一种黑客,但你可以做到以下几点; 覆盖OnBackkeyPress每个页面上的事件.在事件处理程序中添加以下代码:
PhoneApplicationService.Current.State["isbacknav"] = true;
Run Code Online (Sandbox Code Playgroud)
然后,在OnNavigatedTo每个页面的事件处理程序中,检查State字典是否包含该条目.
bool isbacknav = false;
if( PhoneApplicationService.Current.State.ContainsKey( "isbacknav" ) ) {
isbacknav = (bool)PhoneApplicationService.Current.State["isbacknav"];
PhoneApplicationService.Current.State["isbacknav"] = false;
// or
// PhoneApplicationService.Current.State.Remove( "isbacknav" );
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4600 次 |
| 最近记录: |