JournalEntry 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
表示在向後或向前巡覽記錄中的某個項目。
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 物件,以取得 Name 和 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
備註
Windows Presentation Foundation實作導覽歷程記錄服務,針對先前流覽到的每個內容儲存一個專案,就像Microsoft Internet Explorer 中的流覽歷程記錄一樣。 流覽歷程記錄包含兩個堆疊,一個堆疊會記住返回流覽歷程記錄,另一個堆疊會記住向前流覽歷程記錄。
當發生向前流覽時,會將目前專案的專案新增至返回流覽歷程記錄。 這種情況會發生在下列情況下:
方法
Navigate
會呼叫 (NavigationService.Navigate 、 NavigationWindow.NavigateFrame.Navigate) 。方法
GoForward
會呼叫 (NavigationService.GoForward 、 NavigationWindow.GoForwardFrame.GoForward) 。流覽 UI 上的正向按鈕,從目前的導覽器 (XBAP、 NavigationWindowFrame) 顯示。
同樣地,將目前專案的專案新增至向前流覽歷程記錄,發生回溯流覽時會發生下列情況:
方法
GoBack
會呼叫 (NavigationService.GoBack 、 NavigationWindow.GoBackFrame.GoBack) 。流覽 UI 上的上一個按鈕,從目前的導覽器 (XBAP、 NavigationWindowFrame) 顯示。
上一頁和向前流覽歷程記錄中的每個專案都是 類別 JournalEntry 的實例。
每個 JournalEntry 物件都會封裝特定導覽的相關資訊,包括專案 () 的名稱、專案是否保持運作 KeepAlive (Name) ,以及巡覽至 () Source 內容的統一資源識別項 (URI) 。
您可以列舉 NavigationWindow.BackStack 或 Frame.BackStack 屬性, JournalEntry 以擷取返回流覽歷程記錄中的所有物件。 針對向前流覽歷程記錄,您可以列舉 NavigationWindow.ForwardStack 或 Frame.ForwardStack 屬性來 JournalEntry 擷取所有物件。
如果您需要從返回流覽歷程記錄中移除最近的 JournalEntry 物件,以防止流覽至該物件,例如,您可以呼叫 RemoveBackEntry
方法 (NavigationService.RemoveBackEntry 、 NavigationWindow.RemoveBackEntryFrame.RemoveBackEntry) ,這會移除 JournalEntry 物件並傳回其參考。
不過,您無法將物件新增 JournalEntry 至流覽歷程記錄,因為您無法具現化或衍生自 JournalEntry ,而且沒有類型實作成員來執行此動作。 不過,您可以呼叫 AddBackEntry
方法 (AddBackEntry 、 AddBackEntryAddBackEntry) , NavigationService 將 CustomContentState 物件新增至內部建立 JournalEntry 的物件,然後新增至返回流覽歷程記錄,以將自訂 CustomContentState 物件新增回流覽歷程記錄。
建構函式
JournalEntry(SerializationInfo, StreamingContext) |
初始化 JournalEntry 類別的新執行個體。 |
欄位
KeepAliveProperty |
識別 KeepAlive 附加屬性。 |
NameProperty |
識別 Name 附加屬性。 |
屬性
CustomContentState |
取得或設定與這個日誌項目相關聯的 CustomContentState 物件。 |
DependencyObjectType |
取得包裝 DependencyObjectType 這個實例 CLR 型別的 。 (繼承來源 DependencyObject) |
Dispatcher |
取得與這個 Dispatcher 關聯的 DispatcherObject。 (繼承來源 DispatcherObject) |
IsSealed |
取得值,這個值表示此執行個體目前是否已密封 (唯讀)。 (繼承來源 DependencyObject) |
Name |
取得或設定日誌項目的名稱。 |
Source |
取得或設定所巡覽之內容的 URI。 |
附加屬性
KeepAlive |
取得或設定值,這個值表示當巡覽至巡覽記錄中的某個日誌項目時,該項目要加以保留或重新建立其內容。 |
方法
適用於
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應