JournalEntryUnifiedViewConverter Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
JournalEntryUnifiedViewConverter combina el historial de navegación hacia atrás y el historial de navegación hacia delante (tal como lo expone Frame o NavigationWindow) en un único menú de navegación.
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
- Herencia
-
JournalEntryUnifiedViewConverter
- Implementaciones
Ejemplos
En el ejemplo siguiente se muestra cómo construir un menú del historial de navegación basado en texto. El menú usa JournalEntryUnifiedViewConverter para combinar los historiales de navegación hacia atrás y hacia delante del 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>
Comentarios
Tanto Frame como NavigationWindow el cromo de navegación para mostrar que admite la navegación por el historial mediante los siguientes mecanismos:
Un botón para navegar por una parte de contenido a la vez.
Un botón para navegar hacia delante un fragmento de contenido a la vez.
Lista desplegable que muestra:
- Una lista combinada de hasta nueve elementos en el historial de navegación hacia atrás y hasta nueve elementos en el historial de navegación hacia delante.
- Posición del contenido actual con respecto al historial de navegación hacia atrás y hacia delante.
Tanto como NavigationWindowFrame en las siguientes propiedades almacenan el historial de navegación:
Historial de navegación inversa: Frame.BackStack, NavigationWindow.BackStack.
Historial de navegación hacia delante: Frame.ForwardStack, NavigationWindow.ForwardStack.
Para crear la lista NavigationWindow desplegable y Frame usar JournalEntryUnifiedViewConverter para combinar su historial de navegación hacia atrás individual y reenviar el historial de navegación en una sola lista de entradas del historial de navegación. La lista resultante contiene hasta nueve entradas del historial de navegación hacia atrás y hasta nueve entradas del historial de navegación hacia delante, además de una entrada para el contenido actual.
Si crea una interfaz de usuario de navegación personalizada y necesita proporcionar una lista desplegable, puede usar JournalEntryUnifiedViewConverter para un efecto similar.
Uso de atributos XAML
Esta clase no se usa normalmente en XAML.
Constructores
| Nombre | Description |
|---|---|
| JournalEntryUnifiedViewConverter() |
Inicializa una nueva instancia de la clase JournalEntryUnifiedViewConverter. |
Campos
| Nombre | Description |
|---|---|
| JournalEntryPositionProperty |
Identifica la JournalEntryPosition propiedad adjunta. |
Propiedades adjuntas
| Nombre | Description |
|---|---|
| JournalEntryPosition |
Obtiene o establece un valor que especifica si una entrada está en el historial de navegación posterior, el historial de navegación hacia delante o es el contenido actual de un navegador. |
Métodos
| Nombre | Description |
|---|---|
| Convert(Object[], Type, Object, CultureInfo) |
Combina dos pilas de historial de navegación. |
| ConvertBack(Object, Type[], Object, CultureInfo) |
Sin implementar. |
| Equals(Object) |
Determina si el objeto especificado es igual al objeto actual. (Heredado de Object) |
| GetHashCode() |
Actúa como función hash predeterminada. (Heredado de Object) |
| GetJournalEntryPosition(DependencyObject) |
Obtiene la JournalEntryPosition propiedad adjunta del elemento especificado. |
| GetType() |
Obtiene el Type de la instancia actual. (Heredado de Object) |
| MemberwiseClone() |
Crea una copia superficial del Objectactual. (Heredado de Object) |
| SetJournalEntryPosition(DependencyObject, JournalEntryPosition) |
Establece la JournalEntryPositionProperty propiedad adjunta del elemento especificado. |
| ToString() |
Devuelve una cadena que representa el objeto actual. (Heredado de Object) |