Практическое руководство. Переход вперед или назад по журналу навигации
В этом примере показано, как перейти вперед или назад к записям в журнале навигации.
Пример
Код, который выполняется из содержимого на следующих узлах, позволяет перемещаться вперед или назад по журналу навигации по одной записи за раз.
NavigationWindow с использованием NavigationService
Frame с использованием NavigationService
Internet Explorer
Прежде чем переходить вперед на одну запись, необходимо убедиться, что в истории навигации вперед имеются записи. Для этого нужно проверить свойство CanGoForward. Чтобы перейти вперед одну запись, вызовите метод GoForward. Это продемонстрировано в следующем примере.
void navigateForwardButton_Click(object sender, RoutedEventArgs e)
{
// Navigate forward one page from this page, if there is an entry
// in forward navigation history
if (this.NavigationService.CanGoForward)
{
this.NavigationService.GoForward();
}
else
{
MessageBox.Show("No entries in forward navigation history.");
}
}
Private Sub navigateForwardButton_Click(ByVal sender As Object, ByVal e As RoutedEventArgs)
' Navigate forward one page from this page, if there is an entry
' in forward navigation history
If Me.NavigationService.CanGoForward Then
Me.NavigationService.GoForward()
Else
MessageBox.Show("No entries in forward navigation history.")
End If
End Sub
Прежде чем переходить назад на одну запись, необходимо убедиться, что в истории навигации назад имеются записи. Для этого нужно проверить свойство CanGoBack. Чтобы вернуться на одну запись назад, нужно вызвать метод GoBack. Это продемонстрировано в следующем примере.
void navigateBackButton_Click(object sender, RoutedEventArgs e)
{
// Navigate back one page from this page, if there is an entry
// in back navigation history
if (this.NavigationService.CanGoBack)
{
this.NavigationService.GoBack();
}
else
{
MessageBox.Show("No entries in back navigation history.");
}
}
Private Sub navigateBackButton_Click(ByVal sender As Object, ByVal e As RoutedEventArgs)
' Navigate back one page from this page, if there is an entry
' in back navigation history
If Me.NavigationService.CanGoBack Then
Me.NavigationService.GoBack()
Else
MessageBox.Show("No entries in back navigation history.")
End If
End Sub
Методы CanGoForward, GoForward, CanGoBack и GoBack реализуются NavigationWindow, Frame и NavigationService.
Примечание.
Если вы вызываете метод GoForward и в истории навигации вперед нет записей или если вы вызываете метод GoBack и в истории навигации назад нет записей, создается исключение InvalidOperationException.
.NET Desktop feedback
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по