Partager via


Guide pratique pour naviguer vers l’avant ou le retour dans l’historique de navigation

Cet exemple montre comment naviguer vers l’avant ou revenir aux entrées dans l’historique de navigation.

Exemple :

Le code qui s’exécute à partir du contenu dans les hôtes suivants peut naviguer vers l’avant ou le retour dans l’historique de navigation, une entrée à la fois.

Avant de pouvoir naviguer vers l’entrée suivante, vous devez d’abord vérifier qu’il existe des entrées dans l’historique de navigation vers l’avant en inspectant la propriété CanGoForward. Pour naviguer vers l’entrée suivante, vous appelez la méthode GoForward. Ceci est illustré dans l’exemple suivant :

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

Avant de pouvoir revenir à une entrée, vous devez d'abord vérifier qu'il existe des entrées dans l'historique de navigation arrière en inspectant la propriété CanGoBack. Pour revenir à une entrée, vous appelez la méthode GoBack. Ceci est illustré dans l’exemple suivant :

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, et GoBack sont implémentés par NavigationWindow, Frameet NavigationService.

Remarque

Si vous appelez GoForward, et qu’il n’y a pas d’entrées dans l’historique de navigation avant, ou si vous appelez GoBack, et qu’il n’y a pas d’entrées dans l’historique de navigation arrière, une InvalidOperationException est levée.