В моем приложении Windows Phone 8.1 с использованием шаблона MVVM я хочу сделать навигацию по страницам. Я написал для этого код. И передовая навигация по страницам работает отлично!Обратная связь не работает в Windows Phone 8.1 Приложение
Но проблема, с которой я столкнулась, заключается в том, что при нажатии на кнопку нажмите на странице, приложение уходит.
Что я думаю, проблема в том, что я создаю новый объект _frame
каждый раз во время навигации по странице, поэтому из-за этого объект _frame
не сохраняет историю навигации. _frame.CanGoBack
дает false
даже после некоторых раундов навигации (Это должно быть true
).
Так что же мне здесь не хватает? Как сохранить историю навигации? Что-то не так с моим подходом? Буду признателен за любую помощь.
Коды следующим образом:
NavigationService Класс:
public class NavigationService : INavigationService
{
private readonly Frame _frame;
public NavigationService()
{
_frame = new Frame();
}
public void NavigateTo(Type source)
{
Window.Current.Content = _frame;
_frame.Navigate(source);
}
public void GoBack(object sender, BackPressedEventArgs e)
{
Window.Current.Content = _frame;
if (_frame.CanGoBack)
{
_frame.GoBack();
e.Handled = true;
}
}
}
Мой XAML код позади:
public INavigationService NavigationService;
public EmployeeProfilePage()
{
this.InitializeComponent();
HardwareButtons.BackPressed += HardwareButtons_BackPressed;
...
}
private void HardwareButtons_BackPressed(object sender, BackPressedEventArgs e)
{
NavigationService = new NavigationService();
NavigationService.GoBack(this, e);
}
Можете ли вы дать образец кода? –