JournalEntry クラス


"戻る" または "進む" ナビゲーション履歴のエントリを表します。Represents an entry in either back or forward navigation history.

public ref class JournalEntry : System::Windows::DependencyObject, System::Runtime::Serialization::ISerializable
public class JournalEntry : System.Windows.DependencyObject, System.Runtime.Serialization.ISerializable
type JournalEntry = class
    inherit DependencyObject
    interface ISerializable
Public Class JournalEntry
Inherits DependencyObject
Implements ISerializable

次の例では、バックナビゲーションスタックから最新の JournalEntry オブジェクトを取得して、NameSource のプロパティ値を取得する方法を示します。The following example shows how to retrieve the most recent JournalEntry object from the back navigation stack to get the Name and Source property values.

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


Windows Presentation Foundation には、Microsoft Internet ExplorerMicrosoft Internet Explorerのナビゲーション履歴と同じように、以前に移動したコンテンツの各部分に対して1つのエントリを格納するナビゲーション履歴サービスが実装されています。Windows Presentation Foundation implements a navigation history service that stores one entry for each piece of content that has been previously navigated to, just like navigation history in Microsoft Internet ExplorerMicrosoft Internet Explorer. ナビゲーション履歴は2つのスタックで構成されています。1つはナビゲーション履歴を記憶し、もう1つは移動ナビゲーション履歴を記憶します。Navigation history comprises two stacks, one that remembers back navigation history, and one that remembers forward navigation history.

前方ナビゲーションが発生すると、現在の項目のエントリが "戻る" ナビゲーション履歴に追加されます。An entry for the current item is added to back navigation history when a forward navigation occurs. これは、次のような場合に発生します。This occurs in the following situations:

同様に、バックナビゲーションが発生する前に、現在の項目のエントリが "進む" ナビゲーション履歴に追加されます。これは、次の場合に発生します。Likewise, an entry for the current item is added to forward navigation history before a back navigation occurs, which happens when:

[戻る] および [進む] ナビゲーション履歴の各エントリは、JournalEntry クラスのインスタンスです。Each entry in back and forward navigation history is an instance of the JournalEntry class.

JournalEntry オブジェクトは、エントリの名前 (Name)、エントリが保持されているかどうか (KeepAlive)、移動先のコンテンツの URI (uniform resource identifier) (Source) など、特定のナビゲーションに関する情報をカプセル化します。Each JournalEntry object encapsulates information about a particular navigation, including a name for the entry (Name), whether the entry is kept alive (KeepAlive) and the uniform resource identifier (URI) for the content that is navigated to (Source).

NavigationWindow.BackStack または Frame.BackStack プロパティを列挙することによって、"戻る" ナビゲーション履歴のすべての JournalEntry オブジェクトを取得できます。You can retrieve all the JournalEntry objects in back navigation history by enumerating the NavigationWindow.BackStack or Frame.BackStack properties. 前方ナビゲーション履歴の場合、NavigationWindow.ForwardStack または Frame.ForwardStack プロパティを列挙することによって、すべての JournalEntry オブジェクトを取得できます。For forward navigation history, you can retrieve all the JournalEntry objects by enumerating the NavigationWindow.ForwardStack or Frame.ForwardStack properties.

バックナビゲーション履歴から最新の JournalEntry オブジェクトを削除する必要がある場合、たとえば、移動できないようにするには、RemoveBackEntry メソッド (NavigationService.RemoveBackEntryNavigationWindow.RemoveBackEntryFrame.RemoveBackEntry) を呼び出します。これにより、JournalEntry オブジェクトが削除され、そのオブジェクトへの参照が返されます。If you need to remove the most recent JournalEntry object from back navigation history, to prevent navigation to it, for example, you can call the RemoveBackEntry method (NavigationService.RemoveBackEntry, NavigationWindow.RemoveBackEntry, Frame.RemoveBackEntry), which removes the JournalEntry object and returns a reference to it.

ただし、JournalEntry オブジェクトをナビゲーション履歴に追加することはできません。これは、インスタンス化も JournalEntryから派生することもできず、型がメンバーを実装していないためです。You cannot add JournalEntry objects to navigation history, however, because you can neither instantiate nor derive from JournalEntry, and because no type implements a member to do so. ただし、AddBackEntry メソッド (AddBackEntryAddBackEntryAddBackEntry) を呼び出すことによって、ナビゲーション履歴をバックアップするカスタム CustomContentState オブジェクトを追加することができます。NavigationService によって、内部で作成された JournalEntry オブジェクトに CustomContentState オブジェクトが追加され、[戻る] ナビゲーション履歴に追加されます。However, you can add custom CustomContentState objects to back navigation history by calling the AddBackEntry method (AddBackEntry, AddBackEntry, AddBackEntry); NavigationService adds the CustomContentState object to an internally-created JournalEntry object, which is then added to the back navigation history.


JournalEntry(SerializationInfo, StreamingContext)

JournalEntry クラスの新しいインスタンスを初期化します。Initializes a new instance of the JournalEntry class.



KeepAlive 添付プロパティを識別します。Identifies the KeepAlive attached property.


Name 添付プロパティを識別します。Identifies the Name attached property.



この履歴項目に関連付けられている CustomContentState オブジェクトを取得または設定します。Gets or sets the CustomContentState object that is associated with this journal entry.


このインスタンスの CLRCLR 型をラップする DependencyObjectType を取得します。Gets the DependencyObjectType that wraps the CLRCLR type of this instance.

(継承元 DependencyObject)

この Dispatcher が関連付けられている DispatcherObject を取得します。Gets the Dispatcher this DispatcherObject is associated with.

(継承元 DispatcherObject)

このインスタンスが現在シールされている (読み取り専用である) かどうかを示す値を取得します。Gets a value that indicates whether this instance is currently sealed (read-only).

(継承元 DependencyObject)

履歴項目の名前を取得または設定します。Gets or sets the name of the journal entry.


移動先となったコンテンツの URI を取得または設定します。Gets or sets the URI of the content that was navigated to.



ナビゲーション履歴の履歴項目に移動した際に、その履歴項目のコンテンツが保持されるか、または再作成されるか示す値を取得または設定します。Gets or sets a value that indicates whether the content of a journal entry is either retained or re-created when navigated to in navigation history.



呼び出し元のスレッドがこの DispatcherObject にアクセスできるかどうかを確認します。Determines whether the calling thread has access to this DispatcherObject.

(継承元 DispatcherObject)

プロパティのローカル値をクリアします。Clears the local value of a property. クリアするプロパティは DependencyProperty 識別子で指定されます。The property to be cleared is specified by a DependencyProperty identifier.

(継承元 DependencyObject)

読み取り専用プロパティのローカル値を消去します。Clears the local value of a read-only property. 消去するプロパティは、DependencyPropertyKey で指定します。The property to be cleared is specified by a DependencyPropertyKey.

(継承元 DependencyObject)

指定した依存関係プロパティの値を強制します。Coerces the value of the specified dependency property. これは、呼び出し元の DependencyObject の依存関係プロパティのプロパティ メタデータで指定されている CoerceValueCallback 関数を呼び出すことによって実現されます。This is accomplished by invoking any CoerceValueCallback function specified in property metadata for the dependency property as it exists on the calling DependencyObject.

(継承元 DependencyObject)

指定した DependencyObject が現在の DependencyObject と等しいかどうかを判断します。Determines whether a provided DependencyObject is equivalent to the current DependencyObject.

(継承元 DependencyObject)

この DependencyObject のハッシュ コードを取得します。Gets a hash code for this DependencyObject.

(継承元 DependencyObject)

指定された要素に対応する履歴項目の KeepAlive 添付プロパティを返します。Returns the KeepAlive attached property of the journal entry for the specified element.


どの依存関係プロパティがこの DependencyObject 上にローカルに設定された値を持つかを確認するための、専用の列挙子を作成します。Creates a specialized enumerator for determining which dependency properties have locally set values on this DependencyObject.

(継承元 DependencyObject)

指定した要素に対応する履歴項目の Name 添付プロパティを取得します。Gets the Name attached property of the journal entry for the specified element.

GetObjectData(SerializationInfo, StreamingContext)

このオブジェクトがシリアル化されるときに呼び出されます。Called when this object is serialized.


現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(継承元 Object)

DependencyObject のこのインスタンスにある依存関係プロパティの現在の有効値を返します。Returns the current effective value of a dependency property on this instance of a DependencyObject.

(継承元 DependencyObject)

指定した依存関係プロパティの有効値を再評価します。Re-evaluates the effective value for the specified dependency property.

(継承元 DependencyObject)

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(継承元 Object)

この DependencyObject の依存関係プロパティの有効値が更新された場合に必ず呼び出されます。Invoked whenever the effective value of any dependency property on this DependencyObject has been updated. 変更された特定の依存関係プロパティは、イベント データで報告されます。The specific dependency property that changed is reported in the event data.

(継承元 DependencyObject)

ローカルの依存関係プロパティの値を返します (存在する場合)。Returns the local value of a dependency property, if it exists.

(継承元 DependencyObject)
SetCurrentValue(DependencyProperty, Object)

依存関係プロパティ値のソースを変更せずにその値を設定します。Sets the value of a dependency property without changing its value source.

(継承元 DependencyObject)
SetKeepAlive(DependencyObject, Boolean)

指定した要素の KeepAlive 添付プロパティを設定します。Sets the KeepAlive attached property of the specified element.

SetName(DependencyObject, String)

指定した要素の Name 添付プロパティを設定します。Sets the Name attached property of the specified element.

SetValue(DependencyProperty, Object)

依存関係プロパティ識別子を指定して、該当する依存関係プロパティのローカル値を設定します。Sets the local value of a dependency property, specified by its dependency property identifier.

(継承元 DependencyObject)
SetValue(DependencyPropertyKey, Object)

依存関係プロパティの DependencyPropertyKey 識別子で指定した読み取り専用の依存関係プロパティのローカル値を設定します。Sets the local value of a read-only dependency property, specified by the DependencyPropertyKey identifier of the dependency property.

(継承元 DependencyObject)

シリアル化プロセスが、指定された依存関係プロパティの値をシリアル化する必要があるかどうかを示す値を返します。Returns a value that indicates whether serialization processes should serialize the value for the provided dependency property.

(継承元 DependencyObject)

現在のオブジェクトを表す string を返します。Returns a string that represents the current object.

(継承元 Object)

呼び出し元のスレッドがこの DispatcherObject にアクセスできるように強制します。Enforces that the calling thread has access to this DispatcherObject.

(継承元 DispatcherObject)