NavigationService Klasse

Definition

Enthält Methoden, Eigenschaften und Ereignisse zur Unterstützung der Navigation.

public ref class NavigationService sealed
public sealed class NavigationService
type NavigationService = class
Public NotInheritable Class NavigationService
Vererbung
NavigationService

Hinweise

NavigationService Kapselt die Möglichkeit, Inhalte im Kontext einer Browsernavigation herunterzuladen.

Inhalt kann ein beliebiger Typ von .NET Framework-Objekt- und HTML-Dateien sein. Im Allgemeinen sind Seiten jedoch der bevorzugte Weg zum Verpacken von Inhalten für die Navigation (siehe Page).

Inhalt kann durch Bereitstellen einer instance eines Objekts und Aufrufen einer Überladung der Methode, die Navigate ein Objekt akzeptiert, navigiert werden:

Alternativ kann inhalt navigiert werden, indem ein relativer oder absoluter URI an eine der Methodenüberladungen übergeben wird, die Navigate einen URI akzeptiert:

Wenn Der Inhalt durch URI navigiert wird, NavigationService gibt ein Objekt zurück, das den Inhalt enthält.

Die Lebensdauer einer Navigation kann anhand der folgenden Ereignisse nachverfolgt werden:

Nicht alle Ereignisse werden jedes Mal ausgelöst, wenn eine Navigation stattfindet. Der Ausgelöste Satz von Ereignissen wird durch den Typ der erfolgten Navigation (Inhalt oder Inhaltsfragment) und den Abschluss der Navigation (abgebrochen, beendet oder fehlgeschlagen) bestimmt.

Die folgende Abbildung veranschaulicht die Reihenfolge, in der diese Ereignisse ausgelöst werden:

Flussdiagramm für Seitennavigation

Stellt während oder nach einer Navigation Informationen zum Inhalt bereit, NavigationService zu dem navigiert wird, einschließlich des URI des Inhalts, zu dem navigiert wird (Source), dem URI des aktuellen Inhalts (CurrentSource) und einem Objekt, das den Inhalt enthält, der zu (Content) navigiert wurde.

Wenn Inhalte zu navigiert werden, NavigationService zeichnet die Navigation als Eintrag im Navigationsverlauf auf. Ein Eintrag wird zum Backnavigationsverlauf hinzugefügt, wenn entweder eine neue Navigation stattfindet, indem die Navigate -Methode aufgerufen wird, oder indem Sie zu einem Eintrag im Vorwärtsnavigationsverlauf navigieren, indem Sie aufrufen GoForward. Ein Eintrag wird hinzugefügt, um den Navigationsverlauf weiterzuleiten, indem zu einem Eintrag im Backnavigationsverlauf navigiert wird, indem aufgerufen GoBackwird. CanGoBack und CanGoForward melden Sie, ob einträge im Navigationsverlauf "Zurück" bzw. "Vorwärts" vorhanden sind. Außerdem kann der neueste Eintrag im Backnavigationsverlauf entfernt werden, indem Sie aufrufen RemoveBackEntry.

Standardmäßig NavigationService werden keine instance eines Inhaltsobjekts im Navigationsverlauf gespeichert. Erstellt stattdessen jedes Mal mithilfe NavigationService des Navigationsverlaufs eine neue instance des Inhaltsobjekts. Dieses Verhalten wurde entwickelt, um übermäßigen Arbeitsspeicherverbrauch zu vermeiden, wenn große Mengen und große Teile von Inhalten navigiert werden. Folglich wird der Zustand des Inhalts nicht von einer Navigation zur nächsten gespeichert. WPF bietet jedoch mehrere Techniken, mit denen Sie einen Teil des Zustands für einen Teil des Inhalts im Navigationsverlauf speichern können.

Mit AddBackEntrykönnen Sie sich auch mehrere Zustandssätze für eine einzelne Seite instance merken.

NavigationService ist eine sealed Klasse und kann daher nicht instanziiert werden, sondern wird stattdessen von Navigatoren verwendet, NavigationService um die Navigation zu aktivieren. In WPF gibt es zwei Navigatoren: NavigationWindow und Frame.

Visuell verwenden XBAPs internet Explorer 7 als Navigator, um eine integrierte Benutzeroberfläche zu bieten. Physisch verwenden NavigationWindow XBAPs jedoch tatsächlich als Navigator. Die Eigenschaft eines XBAP, das MainWindow in Internet Explorer 7 ausgeführt wird, gibt einen Verweis auf den NavigationWindowzurück, und der navigationsverlauf, der von NavigationWindow verwaltet wird, ist in den Navigationsverlauf integriert, der von Internet Explorer 7 auf folgende Weise verwaltet wird:

  • Wenn Inhalte durch Aufrufen Navigatevon , GoBackund GoForward von einem XBAP aus navigiert werden, werden auch die relevanten Navigationsverlaufseinträge zum Internet Explorer 7-Navigationsverlauf hinzugefügt.

  • Wenn Einträge in der Internet-Explorer 7-Navigationsoberfläche ausgewählt sind, führt NavigationService Internet Explorer 7 dazu, zurück zu dem Inhalt zu navigieren, der diesen Einträgen zugeordnet ist.

Hinweis

Ein Frame kann einen eigenen Navigationsverlauf bereitstellen oder den Navigationsverlauf des Navigators verwenden, der ihn hostet. Wenn Frame ein eigener Navigationsverlauf bereitgestellt wird, kann eine eigene Navigationsoberfläche angezeigt werden, um durch die Einträge im Navigationsverlauf zu navigieren. Diese Einträge werden nicht dem Navigationsverlauf des Hostnavigators (NavigationWindow, , FrameInternet Explorer) hinzugefügt und können daher nicht über die Navigationsoberfläche der einzelnen Benutzer navigiert werden (siehe JournalOwnership).

Eigenschaften

CanGoBack

Ruft einen Wert ab, der angibt, ob der Navigationsverlauf zurück mindestens einen Eintrag enthält.

CanGoForward

Ruft einen Wert ab, der angibt, ob der Navigationsverlauf vor mindestens einen Eintrag enthält.

Content

Ruft einen Verweis auf das Objekt ab, das den aktuellen Inhalt enthält, oder legt diesen Verweis fest.

CurrentSource

Ruft den URI des Inhalts ab, zu dem zuletzt navigiert wurde.

Source

Ruft den URI des aktuellen Inhalts oder den URI des neuen Inhalts ab, zu dem zurzeit navigiert wird, oder legt diesen fest.

Methoden

AddBackEntry(CustomContentState)

Fügt einen Eintrag zum Navigationsverlauf zurück hinzu, der ein CustomContentState-Objekt enthält.

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetNavigationService(DependencyObject)

Ruft einen Verweis auf den NavigationService für den Navigator ab, dessen Inhalt das angegebene DependencyObject enthält.

GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
GoBack()

Navigiert zum letzten Eintrag im Navigationsverlauf zurück, sofern vorhanden.

GoForward()

Navigiert zum letzten Eintrag im Navigationsverlauf vor, sofern vorhanden.

MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
Navigate(Object)

Navigiert asynchron zu Inhalt, der in einem Objekt enthalten ist.

Navigate(Object, Object)

Navigiert asynchron zu Inhalt in einem Objekt und übergibt ein Objekt mit Daten, die für die Verarbeitung während der Navigation verwendet werden.

Navigate(Uri)

Navigiert asynchron zu dem Inhalt, der durch einen URI angegeben wird.

Navigate(Uri, Object)

Navigiert asynchron zum Quellinhalt am URI und übergibt ein Objekt mit Daten, die für die Verarbeitung während der Navigation verwendet werden.

Navigate(Uri, Object, Boolean)

Navigiert asynchron zum Quellinhalt am URI, übergibt ein Objekt mit dem Navigationszustand für die Verarbeitung während der Navigation und stellt eine Sandboxumgebung für den Inhalt bereit.

Refresh()

Lädt den aktuellen Inhalt erneut.

RemoveBackEntry()

Entfernt den letzten Journaleintrag aus dem Verlauf zurück.

StopLoading()

Bricht das weitere Herunterladen von Inhalt für die aktuelle Navigationsanforderung ab.

ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Ereignisse

FragmentNavigation

Tritt auf, wenn die Navigation zu einem Inhaltsfragment beginnt, was sofort erfolgt, wenn sich das gewünschte Fragment im aktuellen Inhalt befindet oder nachdem der QUELL-XAML-Inhalt geladen wurde, wenn das gewünschte Fragment in einem anderen Inhalt enthalten ist.

LoadCompleted

Tritt ein, wenn der Inhalt, zu dem navigiert wird, geladen und analysiert und mit dem Rendering begonnen wurde.

Navigated

Tritt ein, wenn der Inhalt, zu dem navigiert wird, gefunden wurde. Dieses Ereignis ist über die Content-Eigenschaft verfügbar, auch wenn diese noch nicht vollständig geladen wurde.

Navigating

Tritt ein, wenn eine neue Navigation angefordert wird.

NavigationFailed

Tritt ein, wenn ein Fehler auftritt, während zum angeforderten Inhalt navigiert wird.

NavigationProgress

Tritt regelmäßig während eines Downloadvorgangs auf, um Informationen zum Navigationsstatus bereitzustellen.

NavigationStopped

Tritt ein, wenn die StopLoading()-Methode aufgerufen wird oder wenn eine neue Navigation angefordert wird, während eine aktuelle Navigation noch ausgeführt wird.

Gilt für: