Condividi tramite


Procedura: navigare in avanti o indietro nella cronologia di navigazione

In questo esempio viene illustrato come spostarsi avanti o indietro nelle voci nella cronologia di navigazione.

Esempio

Il codice eseguito dal contenuto negli host seguenti può spostarsi avanti o indietro nella cronologia di navigazione, una voce alla volta.

Prima di poter spostarsi in avanti una voce, è prima necessario verificare che siano presenti voci nella cronologia di navigazione in avanti esaminando la proprietà CanGoForward . Per spostarsi in avanti una voce, chiamare il metodo GoForward . Questo è illustrato nell'esempio seguente:

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

Prima di poter tornare indietro di una voce, è prima necessario verificare che siano presenti voci nella cronologia di spostamento indietro esaminando la proprietà CanGoBack . Per tornare indietro di una voce, chiamare il metodo GoBack . Questo è illustrato nell'esempio seguente:

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 e GoBack vengono implementati da NavigationWindow, Framee NavigationService.

Nota

Se si chiama GoForward e non sono presenti voci nella cronologia di navigazione in avanti o se si chiama GoBack e non sono presenti voci nella cronologia di spostamento indietro, viene generata un'eccezione InvalidOperationException .