Partager via


NavigationService Classe

Définition

Contient des méthodes, des propriétés et des événements pour prendre en charge la navigation.

public ref class NavigationService sealed
public sealed class NavigationService
type NavigationService = class
Public NotInheritable Class NavigationService
Héritage
NavigationService

Remarques

NavigationService encapsule la possibilité de télécharger du contenu dans le contexte d’une navigation de style navigateur.

Le contenu peut être n’importe quel type d’objet .NET Framework et de fichiers HTML. En règle générale, toutefois, les pages sont préférées comme moyen de empaqueter du contenu pour la navigation (voir Page).

Le contenu peut être accédé en fournissant une instance d’un objet et en appelant une surcharge de la Navigate méthode qui accepte un objet :

Vous pouvez également accéder au contenu en passant un URI relatif ou absolu à l’une des surcharges de Navigate méthode qui accepte un URI :

Lorsque le contenu est accédé par URI, NavigationService retourne un objet qui contient le contenu.

La durée de vie d’une navigation peut être suivie par le biais des événements suivants :

Tous les événements ne sont pas déclenchés chaque fois qu’une navigation se produit ; l’ensemble d’événements déclenchés est déterminé par le type de navigation qui se produit (contenu ou fragment de contenu) et la façon dont la navigation se termine (annulée, arrêtée ou ayant échoué).

La figure suivante illustre la séquence dans laquelle ces événements sont déclenchés :

Graphique de flux de navigation de page

Pendant ou après une navigation, NavigationService fournit des informations sur le contenu qui est en cours d’accès, y compris l’URI du contenu en cours d’accès (Source), l’URI du contenu actuel (CurrentSource) et un objet qui contient le contenu qui a été accédé à (Content).

Lorsque le contenu est accédé, NavigationService enregistre la navigation en tant qu’entrée dans l’historique de navigation. Une entrée est ajoutée à l’historique de navigation arrière lorsqu’une nouvelle navigation se produit, en appelant la Navigate méthode ou en accédant à une entrée dans l’historique de navigation avant, en appelant GoForward. Une entrée est ajoutée pour transférer l’historique de navigation en accédant à une entrée dans l’historique de navigation arrière, en appelant GoBack. CanGoBack et CanGoForward indiquez s’il existe des entrées dans l’historique de navigation précédent et avant, respectivement. En outre, l’entrée la plus récente dans l’historique de navigation arrière peut être supprimée en appelant RemoveBackEntry.

Par défaut, NavigationService ne stocke pas une instance d’un objet de contenu dans l’historique de navigation. Au lieu de cela, NavigationService crée une instance de l’objet de contenu chaque fois qu’il est accédé à l’aide de l’historique de navigation. Ce comportement est conçu pour éviter une consommation excessive de mémoire lorsque de grands nombres et de grands éléments de contenu sont en cours d’accès. Par conséquent, l’état du contenu n’est pas mémorisé d’une navigation à l’autre. Toutefois, WPF fournit plusieurs techniques par lesquelles vous pouvez stocker un élément d’état pour un élément de contenu dans l’historique de navigation.

À l’aide AddBackEntryde , vous pouvez également mémoriser plusieurs ensembles d’état pour une seule instance de page.

NavigationService est une sealed classe et ne peut donc pas être instanciée ; à la place, NavigationService est utilisée par les navigateurs pour activer la navigation. Dans WPF, il existe deux navigateurs : NavigationWindow et Frame.

Visuellement, les adresses XBAP utilisent Internet Explorer comme navigateur pour fournir une expérience utilisateur intégrée. Toutefois, physiquement, les XBAPs utilisent NavigationWindow réellement comme navigateur ; la MainWindow propriété d’un XBAP s’exécutant dans Internet Explorer renvoie une référence au NavigationWindow, et l’historique de navigation géré par le NavigationWindow navigateur est intégré à l’historique de navigation géré par Internet Explorer de la manière suivante :

  • Lorsque le contenu est accessible en appelant Navigate, GoBacket GoForward à partir d’un XBAP, les entrées d’historique de navigation pertinentes sont également ajoutées à l’historique de navigation Internet Explorer.
  • Lorsque les entrées de l’interface utilisateur de navigation Internet Explorer sont sélectionnées, Internet Explorer entraîne NavigationService la navigation vers le contenu associé à ces entrées.

Note

Un Frame peut fournir son propre historique de navigation ou utiliser l’historique de navigation du navigateur qui l’héberge. Si Frame elle fournit son propre historique de navigation, elle peut afficher son propre interface utilisateur de navigation pour parcourir les entrées de l’historique de navigation ; ces entrées ne sont pas ajoutées à l’historique de navigation du navigateur hôte (NavigationWindow, navigateur Frame) et, par conséquent, ne peuvent pas être redirigées à partir de l’interface utilisateur de navigation de chacun (voir JournalOwnership).

Pour plus d’informations sur la prise en charge de XBAP, consultez forum aux questions sur les applications hébergées par un navigateur WPF (XBAP) .

Propriétés

Nom Description
CanGoBack

Obtient une valeur qui indique s’il existe au moins une entrée dans l’historique de navigation arrière.

CanGoForward

Obtient une valeur qui indique s’il existe au moins une entrée dans l’historique de navigation avant.

Content

Obtient ou définit une référence à l’objet qui contient le contenu actuel.

CurrentSource

Obtient l’URI du contenu auquel le dernier accès a été accédé.

Source

Obtient ou définit l’URI du contenu actuel, ou l’URI du nouveau contenu actuellement en cours d’accès.

Méthodes

Nom Description
AddBackEntry(CustomContentState)

Ajoute une entrée à l’historique de navigation de retour qui contient un CustomContentState objet.

Equals(Object)

Détermine si l’objet spécifié est égal à l’objet actuel.

(Hérité de Object)
GetHashCode()

Sert de fonction de hachage par défaut.

(Hérité de Object)
GetNavigationService(DependencyObject)

Obtient une référence au NavigationService navigateur dont le contenu contient le contenu spécifié DependencyObject.

GetType()

Obtient la Type de l’instance actuelle.

(Hérité de Object)
GoBack()

Accède à l’entrée la plus récente dans l’historique de navigation arrière, s’il en existe un.

GoForward()

Accédez à l’entrée la plus récente dans l’historique de navigation avant, s’il en existe un.

MemberwiseClone()

Crée une copie superficielle du Objectactuel.

(Hérité de Object)
Navigate(Object, Object)

Accédez de manière asynchrone au contenu contenu par un objet et transmettez un objet qui contient des données à utiliser pour le traitement pendant la navigation.

Navigate(Object)

Accédez de manière asynchrone au contenu contenu par un objet.

Navigate(Uri, Object, Boolean)

Accédez de manière asynchrone au contenu source situé dans un URI, transmettez un objet contenant l’état de navigation pour le traitement pendant la navigation et bac à sable le contenu.

Navigate(Uri, Object)

Accédez de manière asynchrone au contenu source situé à un URI et transmettez un objet qui contient des données à utiliser pour le traitement pendant la navigation.

Navigate(Uri)

Accédez de manière asynchrone au contenu spécifié par un URI.

Refresh()

Recharge le contenu actuel.

RemoveBackEntry()

Supprime l’entrée de journal la plus récente de l’historique précédent.

StopLoading()

Arrête le téléchargement ultérieur du contenu pour la demande de navigation actuelle.

ToString()

Retourne une chaîne qui représente l’objet actuel.

(Hérité de Object)

Événements

Nom Description
FragmentNavigation

Se produit lorsque la navigation vers un fragment de contenu commence, qui se produit immédiatement, si le fragment souhaité se trouve dans le contenu actuel ou après le chargement du contenu XAML source, si le fragment souhaité se trouve dans un contenu différent.

LoadCompleted

Se produit lorsque le contenu qui a été parcouru a été chargé, analysé et a commencé le rendu.

Navigated

Se produit lorsque le contenu qui est accessible a été trouvé et est disponible à partir de la Content propriété, même s’il n’a peut-être pas terminé le chargement.

Navigating

Se produit lorsqu’une nouvelle navigation est demandée.

NavigationFailed

Se produit lorsqu’une erreur se produit lors de la navigation vers le contenu demandé.

NavigationProgress

Se produit régulièrement pendant un téléchargement pour fournir des informations de progression de navigation.

NavigationStopped

Se produit lorsque la StopLoading() méthode est appelée ou lorsqu’une nouvelle navigation est demandée pendant qu’une navigation actuelle est en cours.

S’applique à