JournalEntryUnifiedViewConverter Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
JournalEntryUnifiedViewConverter Объединяет журнал перехода назад и журнал перехода вперед (предоставляемый Frame или NavigationWindow) в единое меню навигации.
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 отображают хром навигации, поддерживающий навигацию по журналам, используя следующие механизмы:
Кнопка для перехода назад по одному фрагменту содержимого за раз.
Кнопка для перемещения вперед по одному фрагменту содержимого за раз.
Раскрывающийся список, в который показано:
- Объединенный список до девяти элементов в журнале навигации назад и до девяти элементов в журнале навигации вперед.
- Положение текущего фрагмента содержимого относительно журнала навигации назад и вперед.
Журнал навигации хранится как в, так NavigationWindow и Frame в следующих свойствах:
Назад журнал навигации: Frame.BackStack, NavigationWindow.BackStack.
Журнал переадресации навигации: Frame.ForwardStack, NavigationWindow.ForwardStack.
Чтобы создать раскрывающийся список, NavigationWindow используйте Frame для JournalEntryUnifiedViewConverter объединения отдельных журналов навигации назад и журнала навигации вперед в единый список записей журнала навигации. Итоговый список содержит до девяти записей из журнала навигации назад и до девяти записей из журнала навигации вперед, а также запись для текущего содержимого.
Если вы создаете пользовательский интерфейс навигации и хотите предоставить раскрывающийся список, можно использовать 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) |