Поделиться через


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 объект из стека обратной навигации для получения значений 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 реализует службу журнала навигации, которая хранит по одной записи для каждого фрагмента содержимого, к которому ранее был выполнен переход, как и в журнале навигации в браузере. Журнал навигации состоит из двух стеков: один из которых запоминает журнал навигации назад, а второй — журнал навигации вперед.

Запись для текущего элемента добавляется в журнал навигации назад, когда происходит прямая навигация. Это происходит в следующих ситуациях:

Аналогичным образом, запись для текущего элемента добавляется для пересылки журнала навигации перед переходом назад, что происходит в следующих случаях:

Каждая запись в журнале навигации "Назад" и "Вперед" является экземпляром JournalEntry класса .

Каждый JournalEntry объект инкапсулирует сведения о конкретной навигации, включая имя записи (Name), сохраняется ли запись в активном состоянии (KeepAlive) и универсальный идентификатор ресурса (URI) для содержимого, к которому осуществляется переход (Source).

Вы можете получить все объекты в журнале JournalEntry навигации с помощью перечисления NavigationWindow.BackStack свойств или Frame.BackStack . Для журнала навигации вперед можно получить все JournalEntry объекты, перечислив NavigationWindow.ForwardStack свойства или Frame.ForwardStack .

Если необходимо удалить последний JournalEntry объект из журнала навигации назад, например, чтобы предотвратить переход к нему, можно вызвать RemoveBackEntry метод (NavigationService.RemoveBackEntry, NavigationWindow.RemoveBackEntry, Frame.RemoveBackEntry), который удаляет JournalEntry объект и возвращает ссылку на него.

Однако нельзя добавлять JournalEntry объекты в журнал навигации, так как вы не можете ни создать экземпляр, ни производный от JournalEntry, а также поскольку ни один тип не реализует элемент для этого. Однако можно добавить пользовательские CustomContentState объекты в журнал навигации, вызвав AddBackEntry метод (AddBackEntry, AddBackEntry, AddBackEntry); NavigationService добавляет CustomContentState объект в созданный 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)

Приводит значение указанного свойства зависимостей. Это осуществляется путем вызова какой-либо функции CoerceValueCallback, указанной в метаданных свойства зависимостей, которое существует в вызывающем объекте DependencyObject.

(Унаследовано от DependencyObject)
Equals(Object)

Определяет, является ли указанный DependencyObject эквивалентом текущего DependencyObject.

(Унаследовано от DependencyObject)
GetHashCode()

Возвращает хэш-код для данного объекта DependencyObject.

(Унаследовано от DependencyObject)
GetKeepAlive(DependencyObject)

Возвращает присоединенное свойство KeepAlive записи журнала для указанного элемента.

GetLocalValueEnumerator()

Создает специализированный перечислитель для определения свойств зависимостей, которые локально установили значения для данного DependencyObject.

(Унаследовано от DependencyObject)
GetName(DependencyObject)

Возвращает присоединенное свойство 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)

Применяется к