Очистка записей пересылки в NavigationService - PullRequest
2 голосов
/ 13 мая 2010

У меня есть небольшой пример приложения, размещенного в WPF NavigationWindow. Он имеет три страницы (A, B, C) и три кнопки доступны пользователю: Назад и Вперед в окне навигации и Далее на первой странице.

Первая страница A содержит две радиокнопки. В зависимости от того, какая кнопка была выбрана пользователем, следующая кнопка перейдет на страницу B или страницу C.

Проблема в том, что когда пользователь использует кнопку «Назад» в NavigationWindow, измените выделение на первой странице и нажмите кнопку «Вперед» вместо кнопки «Далее». Следующий обработчик событий переоценил бы логику и переместился бы на нужную страницу, но кнопка «Вперед» просто получила страницу из стека пересылки.

Какое рекомендуемое действие в такой ситуации? Я не смог найти какие-либо подробности такого сценария на MSDN. Я считаю, что проще всего решить эту проблему - очистить стек пересылки, когда пользователь изменил выделение на первой странице, поэтому доступна только кнопка «Далее». К сожалению, я не знаю, как это сделать.

1 Ответ

3 голосов
/ 17 мая 2010

Попытка решить довольно похожую проблему. Пока не заставляю его работать, но я ищу WPF PageFunctions.

Хорошее описание функций страницы вы можете найти по ссылке ниже, а также лучший обзор навигации по WPF, который я видел

http://www.paulstovell.com/wpf-navigation

Также вы можете отключить навигацию вперед, используя обработчик событий Navigating. См. Когда инициализируется NavigationService?

...