Share via


JournalEntry 類別

定義

表示在向後或向前巡覽記錄中的某個項目。

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
繼承
屬性
實作

範例

下列範例示範如何從返回導覽堆疊擷取最新的 JournalEntry 物件,以取得 NameSource 屬性值。

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 實作導覽歷程記錄服務,針對先前流覽到的每個內容片段儲存一個專案,就像在瀏覽器中瀏覽歷程記錄一樣。 瀏覽歷程記錄包含兩個堆疊,一個會記住返回瀏覽歷程記錄,另一個會記住向前瀏覽歷程記錄。

當發生向前流覽時,會將目前專案的專案新增至返回瀏覽歷程記錄。 發生於下列情況:

同樣地,將目前專案的專案新增至向前瀏覽歷程記錄,再發生返回瀏覽,當下列情況發生時:

上一頁和向前瀏覽歷程記錄中的每個專案都是 類別的 JournalEntry 實例。

每個 JournalEntry 物件都會封裝特定導覽的相關信息,包括專案 () Name 的名稱、專案是否保持運作 KeepAlive () ,以及巡覽至 () Source 內容的統一資源標識碼 (URI) 。

您可以列舉 NavigationWindow.BackStackFrame.BackStack 屬性,以擷取返回瀏覽歷程記錄中的所有JournalEntry物件。 針對向前瀏覽歷程記錄,您可以列舉 NavigationWindow.ForwardStackFrame.ForwardStack 屬性來擷取所有JournalEntry物件。

如果您需要從上一頁瀏覽歷程記錄中移除最新的 JournalEntry 物件,以防止巡覽至該物件,例如,您可以呼叫 RemoveBackEntry 方法 (NavigationService.RemoveBackEntryNavigationWindow.RemoveBackEntry) Frame.RemoveBackEntry ,這會移除 JournalEntry 物件並傳回它的參考。

不過,您無法將物件新增 JournalEntry 至導覽歷程記錄,因為您無法具現化或衍生自 JournalEntry,而且沒有類型會實作成員來執行此動作。 不過,您可以呼叫 AddBackEntry 方法 (AddBackEntryAddBackEntry) AddBackEntry ,將自定義CustomContentState物件新增至返回瀏覽歷程記錄, NavigationServiceCustomContentState然後將物件新增至內部建立JournalEntry的物件,然後新增至返回瀏覽歷程記錄。

建構函式

JournalEntry(SerializationInfo, StreamingContext)

初始化 JournalEntry 類別的新執行個體。

欄位

KeepAliveProperty

識別 KeepAlive 附加屬性。

NameProperty

識別 Name 附加屬性。

屬性

CustomContentState

取得或設定與這個日誌項目相關聯的 CustomContentState 物件。

DependencyObjectType

DependencyObjectType取得包裝這個實體之 CLR 型別的 。

(繼承來源 DependencyObject)
Dispatcher

取得與這個 Dispatcher 關聯的 DispatcherObject

(繼承來源 DispatcherObject)
IsSealed

取得值,這個值表示此執行個體目前是否已密封 (唯讀)。

(繼承來源 DependencyObject)
Name

取得或設定日誌項目的名稱。

Source

取得或設定所巡覽之內容的 URI。

附加屬性

KeepAlive

取得或設定值,這個值表示當巡覽至巡覽記錄中的某個日誌項目時,該項目要加以保留或重新建立其內容。

方法

CheckAccess()

判斷呼叫的執行是否可以存取這個 DispatcherObject

(繼承來源 DispatcherObject)
ClearValue(DependencyProperty)

清除屬性的區域數值。 要清除的屬性是由 DependencyProperty 識別項所指定。

(繼承來源 DependencyObject)
ClearValue(DependencyPropertyKey)

清除唯讀屬性的區域數值。 要清除的屬性是由 DependencyPropertyKey 所指定。

(繼承來源 DependencyObject)
CoerceValue(DependencyProperty)

強制轉型所指定相依性屬性的值。 完成方式是叫用存在於呼叫 DependencyObject 之相依性屬性的屬性中繼資料中所指定的任何 CoerceValueCallback 函式。

(繼承來源 DependencyObject)
Equals(Object)

判斷提供的 DependencyObject 和目前的 DependencyObject 是否相等。

(繼承來源 DependencyObject)
GetHashCode()

取得這個 DependencyObject 的雜湊碼。

(繼承來源 DependencyObject)
GetKeepAlive(DependencyObject)

傳回所指定項目 (element) 之日誌項目 (entry) 的 KeepAlive 附加屬性。

GetLocalValueEnumerator()

建立特定的列舉值,以判斷哪些相依性屬性在此 DependencyObject 上具有本機設定的值。

(繼承來源 DependencyObject)
GetName(DependencyObject)

取得所指定項目 (element) 之日誌項目 (entry) 的 Name 附加屬性。

GetObjectData(SerializationInfo, StreamingContext)

序列化此物件時呼叫。

GetType()

取得目前執行個體的 Type

(繼承來源 Object)
GetValue(DependencyProperty)

傳回 DependencyObject 的這個執行個體上之相依性屬性的目前有效值。

(繼承來源 DependencyObject)
InvalidateProperty(DependencyProperty)

重新評估指定相依性屬性的有效值。

(繼承來源 DependencyObject)
MemberwiseClone()

建立目前 Object 的淺層複製。

(繼承來源 Object)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

每當這個 DependencyObject 上任何相依性屬性的有效值已更新時叫用。 已變更的特定相依性屬性會在事件資料中報告。

(繼承來源 DependencyObject)
ReadLocalValue(DependencyProperty)

傳回相依性屬性的區域值 (如果存在)。

(繼承來源 DependencyObject)
SetCurrentValue(DependencyProperty, Object)

設定相依性屬性的值,而不需要變更其值來源。

(繼承來源 DependencyObject)
SetKeepAlive(DependencyObject, Boolean)

設定指定項目的 KeepAlive 附加屬性。

SetName(DependencyObject, String)

設定指定項目的 Name 附加屬性。

SetValue(DependencyProperty, Object)

設定相依性屬性的區域值 (由相依性屬性的識別碼所指定)。

(繼承來源 DependencyObject)
SetValue(DependencyPropertyKey, Object)

設定唯讀相依性屬性的區域數值 (由相依性屬性的 DependencyPropertyKey 識別項所指定)。

(繼承來源 DependencyObject)
ShouldSerializeProperty(DependencyProperty)

傳回值,這個值表示序列化程序是否應該序列化所提供相依性屬性的值。

(繼承來源 DependencyObject)
ToString()

傳回代表目前物件的字串。

(繼承來源 Object)
VerifyAccess()

請強制執行可以存取這個 DispatcherObject 的呼叫執行緒。

(繼承來源 DispatcherObject)

適用於