2016-03-25 32 views
0

uwp uygulamasında donanım geri düğmesine bastığımda, uygulama kapanır. Ben hamburger arabirimini 10 numaralı şablondan kullanıyorum.Donanım Geri düğmesi uygulamayı kapatır

Aşağıdaki kodu app.xaml.cs ve het schell.xaml.cs dosyasında ekledim ancak arkaya bastığımda, canGoBack parametresinin false olduğunu ve uygulamayı kapattığını söylüyor. .

ise) (a Frame.Navigate

SystemNavigationManager.GetForCurrentView().BackRequested += (sender, e) => 
{ 
    if (!e.Handled && Frame.CanGoBack) 
    { 
     e.Handled = true; 
     AppFrame.GoBack(); 
    } 
}; 

gerçek olamayacak kadar CanGoBack için unutmayın önce aramalısın:

public Shell(INavigationService navigationService) 
{ 
    Instance = this; 
    InitializeComponent(); 

    // setup for static calls 
    Window = WindowWrapper.Current(); 
    MyHamburgerMenu.NavigationService = navigationService; 

    // any nav change, reset to normal 
    navigationService.FrameFacade.Navigated += (s, e) => 
     BusyModal.IsModal = LoginModal.IsModal = false; 

    SystemNavigationManager.GetForCurrentView().BackRequested += Shell_BackRequested; 
} 

private void Shell_BackRequested(object sender, BackRequestedEventArgs e) 
{ 
    MyHamburgerMenu.NavigationService.GoBack(); 
} 
+0

e.Handled = true değerine göre Shell_BackRequested() öğesini ayarlamanız gerekir. – Gaurav

+0

e.handled = true eklediğimde uygulama annymore'u kapatmıyor, ancak –

+0

Yup'de geri gitmiyorsa bunu yapmamalısınız. CanGoBack doğru olduğunda, e.handled = true değerini ayarlayabilirsiniz. – Archana

cevap

0

Bu varsayılan bir uygulama için BackRequested olay işlemesi gerektiğini nasıl Frame.BackStack'te kareler var, o zaman CanGoBack doğru olacaktır.

İlgili konular