Condividi tramite


JournalEntry Classe

Definizione

Rappresenta una voce nella cronologia di navigazione indietro o in avanti.

public ref class JournalEntry : System::Windows::DependencyObject, System::Runtime::Serialization::ISerializable
[System.Serializable]
public class JournalEntry : System.Windows.DependencyObject, System.Runtime.Serialization.ISerializable
public class JournalEntry : System.Windows.DependencyObject, System.Runtime.Serialization.ISerializable
[<System.Serializable>]
type JournalEntry = class
    inherit DependencyObject
    interface ISerializable
type JournalEntry = class
    inherit DependencyObject
    interface ISerializable
Public Class JournalEntry
Inherits DependencyObject
Implements ISerializable
Ereditarietà
Attributi
Implementazioni

Esempio

Nell'esempio seguente viene illustrato come recuperare l'oggetto più recente JournalEntry dallo stack di spostamento indietro per ottenere i valori delle Name proprietà e Source .

void removeJournalEntryButton_Click(object sender, RoutedEventArgs e)
{
    // If there are journal entries on the back navigation stack
    if (this.NavigationService.CanGoBack)
    {
        // Remove and get the most recent entry on the back navigation stack
        JournalEntry journalEntry = this.NavigationService.RemoveBackEntry();

        string name = journalEntry.Name;
        string uri = journalEntry.Source.OriginalString;
        MessageBox.Show(name + " [" + uri + "] removed from back navigation.");
    }
}
Private Sub removeJournalEntryButton_Click(ByVal sender As Object, ByVal e As RoutedEventArgs)
    ' If there are journal entries on the back navigation stack
    If Me.NavigationService.CanGoBack Then
        ' Remove and get the most recent entry on the back navigation stack
        Dim journalEntry As JournalEntry = Me.NavigationService.RemoveBackEntry()

        Dim name As String = journalEntry.Name
        Dim uri As String = journalEntry.Source.OriginalString
        MessageBox.Show(name & " [" & uri & "] removed from back navigation.")
    End If
End Sub

Commenti

Windows Presentation Foundation implementa un servizio cronologia di navigazione che archivia una voce per ogni parte di contenuto a cui è stato precedentemente eseguito lo spostamento, proprio come la cronologia di navigazione in un browser. La cronologia di navigazione comprende due stack, uno che ricorda la cronologia di spostamento indietro e uno che ricorda la cronologia di navigazione in avanti.

Una voce per l'elemento corrente viene aggiunta alla cronologia di spostamento indietro quando si verifica una navigazione in avanti. Ciò si verifica nelle situazioni seguenti:

Analogamente, viene aggiunta una voce per l'elemento corrente per inoltrare la cronologia di navigazione prima che si verifichi uno spostamento indietro, che si verifica quando:

Ogni voce nella cronologia di spostamento indietro e in avanti è un'istanza della JournalEntry classe .

Ogni JournalEntry oggetto incapsula informazioni su una particolare navigazione, incluso un nome per la voce (Name), se la voce viene mantenuta attiva (KeepAlive) e l'URI (Uniform Resource Identifier) per il contenuto a cui si accede (Source).

È possibile recuperare tutti gli JournalEntry oggetti nella cronologia di spostamento indietro enumerando le NavigationWindow.BackStack proprietà o Frame.BackStack . Per la cronologia di spostamento in avanti, è possibile recuperare tutti gli JournalEntry oggetti enumerando le NavigationWindow.ForwardStack proprietà o Frame.ForwardStack .

Se è necessario rimuovere l'oggetto più recente JournalEntry dalla cronologia di spostamento indietro, per impedire lo spostamento, ad esempio, è possibile chiamare il RemoveBackEntry metodo (NavigationService.RemoveBackEntry, NavigationWindow.RemoveBackEntry, Frame.RemoveBackEntry), che rimuove l'oggetto JournalEntry e restituisce un riferimento.

Non è tuttavia possibile aggiungere JournalEntry oggetti alla cronologia di navigazione, perché non è possibile creare un'istanza né derivare da JournalEntrye perché nessun tipo implementa un membro a tale scopo. Tuttavia, è possibile aggiungere oggetti personalizzati CustomContentState alla cronologia di spostamento indietro chiamando il AddBackEntry metodo (AddBackEntry, AddBackEntry, AddBackEntry); NavigationService aggiunge l'oggetto CustomContentState a un oggetto creato JournalEntry internamente, che viene quindi aggiunto alla cronologia di spostamento indietro.

Costruttori

Nome Descrizione
JournalEntry(SerializationInfo, StreamingContext)

Inizializza una nuova istanza della classe JournalEntry.

Campi

Nome Descrizione
KeepAliveProperty

Identifica la KeepAlive proprietà associata.

NameProperty

Identifica la Name proprietà associata.

Proprietà

Nome Descrizione
CustomContentState

Ottiene o imposta l'oggetto CustomContentState associato a questa voce del journal.

DependencyObjectType

Ottiene l'oggetto DependencyObjectType che esegue il wrapping del tipo CLR di questa istanza.

(Ereditato da DependencyObject)
Dispatcher

Ottiene l'oggetto DispatcherDispatcherObject a cui è associato.

(Ereditato da DispatcherObject)
IsSealed

Ottiene un valore che indica se questa istanza è attualmente sealed (sola lettura).

(Ereditato da DependencyObject)
Name

Ottiene o imposta il nome della voce del journal.

Source

Ottiene o imposta l'URI del contenuto a cui è stato eseguito lo spostamento.

Proprietà associate

Nome Descrizione
KeepAlive

Ottiene o imposta un valore che indica se il contenuto di una voce del journal viene conservato o ricreato quando si passa a nella cronologia di navigazione.

Metodi

Nome Descrizione
CheckAccess()

Determina se il thread chiamante ha accesso a questo DispatcherObjectoggetto .

(Ereditato da DispatcherObject)
ClearValue(DependencyProperty)

Cancella il valore locale di una proprietà. La proprietà da cancellare viene specificata da un DependencyProperty identificatore.

(Ereditato da DependencyObject)
ClearValue(DependencyPropertyKey)

Cancella il valore locale di una proprietà di sola lettura. La proprietà da cancellare viene specificata da un oggetto DependencyPropertyKey.

(Ereditato da DependencyObject)
CoerceValue(DependencyProperty)

Forza il valore della proprietà di dipendenza specificata. A tale scopo, richiamare qualsiasi CoerceValueCallback funzione specificata nei metadati della proprietà per la proprietà di dipendenza così come esiste nella chiamata DependencyObjectdi .

(Ereditato da DependencyObject)
Equals(Object)

Determina se un oggetto specificato DependencyObject è equivalente all'oggetto corrente DependencyObject.

(Ereditato da DependencyObject)
GetHashCode()

Ottiene un codice hash per l'oggetto DependencyObject.

(Ereditato da DependencyObject)
GetKeepAlive(DependencyObject)

Restituisce la KeepAlive proprietà associata della voce journal per l'elemento specificato.

GetLocalValueEnumerator()

Crea un enumeratore specializzato per determinare quali proprietà di dipendenza hanno valori impostati localmente in questo DependencyObjectoggetto .

(Ereditato da DependencyObject)
GetName(DependencyObject)

Ottiene la Name proprietà associata della voce journal per l'elemento specificato.

GetObjectData(SerializationInfo, StreamingContext)

Chiamato quando questo oggetto viene serializzato.

GetType()

Ottiene il Type dell'istanza corrente.

(Ereditato da Object)
GetValue(DependencyProperty)

Restituisce il valore effettivo corrente di una proprietà di dipendenza in questa istanza di un oggetto DependencyObject.

(Ereditato da DependencyObject)
InvalidateProperty(DependencyProperty)

Rivaluta il valore effettivo per la proprietà di dipendenza specificata.

(Ereditato da DependencyObject)
MemberwiseClone()

Crea una copia superficiale del Objectcorrente.

(Ereditato da Object)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

Richiamato ogni volta che il valore effettivo di qualsiasi proprietà di dipendenza in questo DependencyObject oggetto è stato aggiornato. La proprietà di dipendenza specifica modificata viene segnalata nei dati dell'evento.

(Ereditato da DependencyObject)
ReadLocalValue(DependencyProperty)

Restituisce il valore locale di una proprietà di dipendenza, se esistente.

(Ereditato da DependencyObject)
SetCurrentValue(DependencyProperty, Object)

Imposta il valore di una proprietà di dipendenza senza modificarne l'origine del valore.

(Ereditato da DependencyObject)
SetKeepAlive(DependencyObject, Boolean)

Imposta la KeepAlive proprietà associata dell'elemento specificato.

SetName(DependencyObject, String)

Imposta la Name proprietà associata dell'elemento specificato.

SetValue(DependencyProperty, Object)

Imposta il valore locale di una proprietà di dipendenza, specificato dall'identificatore della proprietà di dipendenza.

(Ereditato da DependencyObject)
SetValue(DependencyPropertyKey, Object)

Imposta il valore locale di una proprietà di dipendenza di sola lettura, specificato dall'identificatore DependencyPropertyKey della proprietà di dipendenza.

(Ereditato da DependencyObject)
ShouldSerializeProperty(DependencyProperty)

Restituisce un valore che indica se i processi di serializzazione devono serializzare il valore per la proprietà di dipendenza specificata.

(Ereditato da DependencyObject)
ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)
VerifyAccess()

Impone che il thread chiamante abbia accesso a questo DispatcherObjectoggetto .

(Ereditato da DispatcherObject)

Si applica a