JournalEntryUnifiedViewConverter Класс

Определение

JournalEntryUnifiedViewConverter выполняет слияние журналов перехода назад и вперед (предоставленных свойством Frame или NavigationWindow) в одно меню навигации в стиле Windows Internet Explorer 7.

public ref class JournalEntryUnifiedViewConverter sealed : System::Windows::Data::IMultiValueConverter
public sealed class JournalEntryUnifiedViewConverter : System.Windows.Data.IMultiValueConverter
type JournalEntryUnifiedViewConverter = class
    interface IMultiValueConverter
Public NotInheritable Class JournalEntryUnifiedViewConverter
Implements IMultiValueConverter
Наследование
JournalEntryUnifiedViewConverter
Реализации

Примеры

В следующем примере показано, как создать текстовое меню журнала навигации. В меню используется JournalEntryUnifiedViewConverter для объединения журналов навигации вперед и назад размещенного Frame навигатора.

<Window 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:presentationFramework="clr-namespace:System.Windows.Navigation;assembly=presentationframework"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="JournalEntryUnifiedPositionConverterSnippets"
    >

    <Window.Resources>

        <presentationFramework:JournalEntryUnifiedViewConverter x:Key="JournalEntryUnifiedViewConverter" />

        <!--MenuItem data template-->
        <DataTemplate x:Key="JournalEntryMenuItemTemplate">
            <MenuItem VerticalContentAlignment="Center" Command="NavigationCommands.NavigateJournal" CommandTarget="{Binding ElementName=frame}" CommandParameter="{Binding RelativeSource={RelativeSource Self}}">
                <MenuItem.Template>
                    <ControlTemplate>
                        <TextBlock>
                            <TextBlock Text="{Binding (JournalEntryUnifiedViewConverter.JournalEntryPosition)}" FontWeight="Bold"></TextBlock>
                            <LineBreak />
                            <TextBlock Text="{Binding Path=Name}" />
                        </TextBlock>
                    </ControlTemplate>
                </MenuItem.Template>
            </MenuItem>
        </DataTemplate>

    </Window.Resources>

    <DockPanel>

        <!--Unified navigation history menu-->
        <Menu DockPanel.Dock="Top">
            <MenuItem Header="Unified Navigation History" ItemTemplate="{DynamicResource JournalEntryMenuItemTemplate}">
                <MenuItem.ItemsSource>
                    <MultiBinding Converter="{StaticResource JournalEntryUnifiedViewConverter}">
                        <MultiBinding.Bindings>
                            <Binding ElementName="frame" Path="BackStack"/>
                            <Binding ElementName="frame" Path="ForwardStack" />
                        </MultiBinding.Bindings>
                    </MultiBinding>
                </MenuItem.ItemsSource>
            </MenuItem>
        </Menu>

        <!--Navigator (Frame with its navigation chrome hidden-->
        <Frame Name="frame" NavigationUIVisibility="Hidden" Source="HomePage.xaml" />

    </DockPanel>
    
</Window>

Комментарии

NavigationWindow И Frame отображают хром навигации, поддерживающий навигацию по журналам, используя следующие механизмы:

  • Кнопка для перехода назад по одному фрагменту содержимого за раз.

  • Кнопка для перехода вперед по одному фрагменту содержимого за раз.

  • Раскрывающийся список Windows Internet Обозреватель в стиле 7, где отображаются следующие сведения:

    • Объединенный список до девяти элементов в журнале обратной навигации и до девяти элементов в журнале навигации вперед.

    • Положение текущего фрагмента содержимого по отношению к журналу навигации назад и вперед.

Журнал навигации хранится как в следующих свойствах, так NavigationWindow и Frame в следующих свойствах:

Назад журнал навигации: Frame.BackStack, NavigationWindow.BackStack.

Журнал навигации вперед: Frame.ForwardStack, NavigationWindow.ForwardStack.

Чтобы создать windows Internet Обозреватель раскрывающийся список в 7-стиле и NavigationWindowFrame используйте JournalEntryUnifiedViewConverter для объединения отдельных журналов навигации назад и журнала навигации вперед в единый список записей журнала навигации. Итоговый список содержит до девяти записей из журнала навигации назад и до девяти записей из журнала навигации вперед, а также запись для текущего содержимого.

Если вы создаете пользовательский пользовательский интерфейс навигации и хотите предоставить раскрывающийся список Windows Internet Обозреватель 7 стиле, можно использовать JournalEntryUnifiedViewConverter для аналогичного эффекта.

Использование атрибута XAML

Этот класс обычно не используется в XAML.

Конструкторы

JournalEntryUnifiedViewConverter()

Инициализирует новый экземпляр класса JournalEntryUnifiedViewConverter.

Поля

JournalEntryPositionProperty

Идентифицирует присоединенное свойство JournalEntryPosition.

Присоединенные свойства

JournalEntryPosition

Возвращает или задает значение, указывающее, принадлежит запись журналу переходов назад, вперед, или это текущее содержимое навигатора.

Методы

Convert(Object[], Type, Object, CultureInfo)

Соединяет два стека журналов переходов.

ConvertBack(Object, Type[], Object, CultureInfo)

Не реализован.

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

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

Служит хэш-функцией по умолчанию.

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

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

GetType()

Возвращает объект Type для текущего экземпляра.

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

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
SetJournalEntryPosition(DependencyObject, JournalEntryPosition)

Задает значение присоединенного свойства JournalEntryPositionProperty в указанном элементе.

ToString()

Возвращает строку, представляющую текущий объект.

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

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

См. также раздел