JournalEntryUnifiedViewConverter Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
JournalEntryUnifiedViewConverter Funde o histórico de navegação para trás e o histórico de navegação para trás (conforme exposto por Frame ou NavigationWindow) num único menu de navegação.
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
- Herança
-
JournalEntryUnifiedViewConverter
- Implementações
Exemplos
O exemplo seguinte mostra como construir um menu de histórico de navegação baseado em texto. O menu serve JournalEntryUnifiedViewConverter para combinar os históricos de navegação para trás e para a frente do navegador hospedado 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>
Observações
Ambos Frame e NavigationWindow o Chrome de navegação de exibição que suporta navegação de histórico usando os seguintes mecanismos:
Um botão para navegar um conteúdo de cada vez.
Um botão para avançar um conteúdo de cada vez.
Uma lista suspensa que mostra:
- Uma lista combinada de até nove itens no histórico de navegação para trás e até nove itens no histórico de navegação para trás.
- A posição do conteúdo atual relativamente ao histórico de navegação para trás e para a frente.
O histórico de navegação é armazenado tanto NavigationWindow por como Frame nas seguintes propriedades:
Histórico de Navegação Anterior: Frame.BackStack, NavigationWindow.BackStack.
Histórico de Navegação Avançada: Frame.ForwardStack, NavigationWindow.ForwardStack.
Para criar a lista suspensa NavigationWindow e Frame usar JournalEntryUnifiedViewConverter para fundir o seu histórico individual de navegação atrás e de navegação para frente numa única lista de entradas do histórico de navegação. A lista resultante contém até nove entradas do histórico de navegação retrocedente e até nove entradas do histórico de navegação anterior, além de uma entrada para o conteúdo atual.
Se criares uma interface de navegação personalizada e precisares de fornecer uma lista suspensa, podes usar JournalEntryUnifiedViewConverter com efeito semelhante.
Uso de atributos XAML
Esta classe não é normalmente usada em XAML.
Construtores
| Name | Description |
|---|---|
| JournalEntryUnifiedViewConverter() |
Inicializa uma nova instância da JournalEntryUnifiedViewConverter classe. |
Campos
| Name | Description |
|---|---|
| JournalEntryPositionProperty |
Identifica a JournalEntryPosition propriedade anexada. |
Propriedades Anexadas
| Name | Description |
|---|---|
| JournalEntryPosition |
Recebe ou define um valor que especifica se uma entrada está no histórico de navegação retroativa, histórico de navegação para a frente, ou é o conteúdo atual de um navegador. |
Métodos
| Name | Description |
|---|---|
| Convert(Object[], Type, Object, CultureInfo) |
Funde duas pilhas de histórico de navegação. |
| ConvertBack(Object, Type[], Object, CultureInfo) |
Não implementado. |
| Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| GetHashCode() |
Serve como função de hash predefinida. (Herdado de Object) |
| GetJournalEntryPosition(DependencyObject) |
Obtém a JournalEntryPosition propriedade associada para o elemento especificado. |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| MemberwiseClone() |
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| SetJournalEntryPosition(DependencyObject, JournalEntryPosition) |
Define a JournalEntryPositionProperty propriedade associada do elemento especificado. |
| ToString() |
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |