JournalEntryUnifiedViewConverter Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
JournalEntryUnifiedViewConverter fusionne l’historique de navigation et l’historique avant de navigation (tel qu’exposé par Frame ou NavigationWindow) dans un menu de navigation unique.
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
- Héritage
-
JournalEntryUnifiedViewConverter
- Implémente
Exemples
L’exemple suivant montre comment construire un menu d’historique de navigation basé sur du texte. Le menu utilise JournalEntryUnifiedViewConverter pour combiner les historiques de navigation arrière et avant du navigateur hébergé 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>
Remarques
À la fois Frame et NavigationWindow afficher le chrome de navigation qui prend en charge la navigation dans l’historique à l’aide des mécanismes suivants :
Bouton permettant de parcourir un élément de contenu à la fois.
Bouton permettant de naviguer vers l’avant un élément de contenu à la fois.
Liste déroulante qui affiche :
- Liste combinée d’un maximum de neuf éléments dans l’historique de navigation arrière et jusqu’à neuf éléments dans l’historique de navigation avant.
- Position du contenu actuel par rapport à l’historique de navigation arrière et avant.
L’historique de navigation est stocké à la fois NavigationWindow et Frame dans les propriétés suivantes :
Historique de navigation arrière : Frame.BackStack, NavigationWindow.BackStack.
Historique de navigation avant : Frame.ForwardStack, NavigationWindow.ForwardStack.
Pour créer la liste déroulante et NavigationWindowFrame l’utiliser JournalEntryUnifiedViewConverter pour fusionner l’historique de navigation précédent individuel et l’historique de navigation vers l’avant en une seule liste d’entrées d’historique de navigation. La liste obtenue contient jusqu’à neuf entrées de l’historique de navigation arrière et jusqu’à neuf entrées de l’historique de navigation avant, ainsi qu’une entrée pour le contenu actuel.
Si vous créez une interface utilisateur de navigation personnalisée et que vous devez fournir une liste déroulante, vous pouvez l’utiliser JournalEntryUnifiedViewConverter pour obtenir un effet similaire.
Utilisation des attributs XAML
Cette classe n’est généralement pas utilisée en XAML.
Constructeurs
| Nom | Description |
|---|---|
| JournalEntryUnifiedViewConverter() |
Initialise une nouvelle instance de la classe JournalEntryUnifiedViewConverter. |
Champs
| Nom | Description |
|---|---|
| JournalEntryPositionProperty |
Identifie la JournalEntryPosition propriété jointe. |
Propriétés attachées
| Nom | Description |
|---|---|
| JournalEntryPosition |
Obtient ou définit une valeur qui spécifie si une entrée se trouve dans l’historique de navigation arrière, l’historique de navigation avant ou le contenu actuel d’un navigateur. |
Méthodes
| Nom | Description |
|---|---|
| Convert(Object[], Type, Object, CultureInfo) |
Fusionne deux piles d’historique de navigation. |
| ConvertBack(Object, Type[], Object, CultureInfo) |
Non implémenté. |
| Equals(Object) |
Détermine si l’objet spécifié est égal à l’objet actuel. (Hérité de Object) |
| GetHashCode() |
Sert de fonction de hachage par défaut. (Hérité de Object) |
| GetJournalEntryPosition(DependencyObject) |
Obtient la JournalEntryPosition propriété jointe de l’élément spécifié. |
| GetType() |
Obtient la Type de l’instance actuelle. (Hérité de Object) |
| MemberwiseClone() |
Crée une copie superficielle du Objectactuel. (Hérité de Object) |
| SetJournalEntryPosition(DependencyObject, JournalEntryPosition) |
Définit la JournalEntryPositionProperty propriété jointe de l’élément spécifié. |
| ToString() |
Retourne une chaîne qui représente l’objet actuel. (Hérité de Object) |