NavigationService.Navigating Evento

Definizione

Si verifica quando viene richiesta una nuova navigazione.

public:
 event System::Windows::Navigation::NavigatingCancelEventHandler ^ Navigating;
public event System.Windows.Navigation.NavigatingCancelEventHandler Navigating;
member this.Navigating : System.Windows.Navigation.NavigatingCancelEventHandler 
Public Custom Event Navigating As NavigatingCancelEventHandler 

Tipo evento

Esempio

Nell'esempio seguente viene illustrato come gestire Navigating per rilevare se è stata effettuata una richiesta di aggiornamento del contenuto statico e, in tal caso, per annullare la richiesta.

Navigating.

void NavigationService_Navigating(object sender, NavigatingCancelEventArgs e)
{
    // Don't allow refreshing of a static page
    if ((e.NavigationMode == NavigationMode.Refresh) &&
        (e.Uri.OriginalString == "StaticPage.xaml"))
    {
        e.Cancel = true;
    }
}
Private Sub NavigationService_Navigating(ByVal sender As Object, ByVal e As NavigatingCancelEventArgs)
    ' Don't allow refreshing of a static page
    If (e.NavigationMode = NavigationMode.Refresh) AndAlso (e.Uri.OriginalString = "StaticPage.xaml") Then
        e.Cancel = True
    End If
End Sub

Commenti

Navigating viene generato quando viene richiesto un nuovo spostamento, ma prima che venga richiesto il contenuto di origine, incluso quando:

  • Viene chiamato Navigate.

  • GoBack o GoForward viene chiamato (o viene selezionata una voce da un'interfaccia utente di navigazione).

  • Si passa a un frammento di contenuto.

È possibile gestire Navigating se è necessario individuare le informazioni pertinenti relative alla richiesta di navigazione prima dell'avvio della navigazione. Queste informazioni sono disponibili dall'oggetto NavigatingCancelEventArgs passato al Navigating gestore eventi.

Un WebRequest oggetto per la navigazione viene creato e disponibile dal NavigatingCancelEventArgs parametro . Poiché la richiesta effettiva non è stata effettuata a questo punto, è possibile riconfigurare l'oggetto WebRequest , se necessario.

È anche NavigatingCancelEventArgs possibile annullare la navigazione, se necessario, impostando Cancel su true. Se si annulla la navigazione, non vengono generati altri eventi di spostamento.

Nota

Se l'applicazione è ospitata nel browser, non è possibile impedire all'utente di uscire dall'applicazione annullando l'evento Navigating .

Dopo che la prima parte di contenuto viene spostata da uno strumento di navigazione (NavigationWindow, Frame), ogni parte di contenuto che viene spostato dalla cronologia di spostamento viene aggiunta. Se è necessario salvare le informazioni sullo stato del contenuto da cui si sta passando, è possibile aggiungere lo stato alla voce journal per tale contenuto impostando ContentStateToSave con un CustomContentState oggetto .

Nota

Quando NavigationService genera Navigating, genera Application.Navigating anche l'evento sull'oggetto Application .

Si applica a

Vedi anche