JournalEntryUnifiedViewConverter Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
JournalEntryUnifiedViewConverter Führt den Navigationsverlauf zurück und den Navigationsverlauf vorwärts (wie von Frame oder NavigationWindowverfügbar gemacht) in einem einzelnen Navigationsmenü zusammen.
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
- Vererbung
-
JournalEntryUnifiedViewConverter
- Implementiert
Beispiele
Das folgende Beispiel zeigt, wie ein textbasiertes Navigationsverlaufsmenü erstellt wird. Das Menü verwendet JournalEntryUnifiedViewConverter , um sowohl den Zurück- als auch den Vorwärtsnavigationsverlauf des gehosteten Frame Navigators zu kombinieren.
<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>
Hinweise
Sowohl als NavigationWindow auch Frame zeigen Navigationschrom an, das die Verlaufsnavigation mithilfe der folgenden Mechanismen unterstützt:
Eine Schaltfläche zum Navigieren nacheinander in einem Teil des Inhalts.
Eine Schaltfläche, mit der Sie jeweils einen Teil des Inhalts vorwärts navigieren können.
Eine Dropdownliste, in der Folgendes angezeigt wird:
- Eine kombinierte Liste von bis zu neun Elementen im Verlauf der Rücknavigation und bis zu neun Elementen im Vorwärtsnavigationsverlauf.
- Die Position des aktuellen Inhaltsabschnitts in Bezug auf den Zurück- und Vorwärtsnavigationsverlauf.
Der Navigationsverlauf wird sowohl von als auch NavigationWindowFrame in den folgenden Eigenschaften gespeichert:
Zurücknavigationsverlauf: Frame.BackStack, NavigationWindow.BackStack.
Vorwärtsnavigationsverlauf: Frame.ForwardStack, NavigationWindow.ForwardStack.
Um die Dropdownliste zu erstellen, und Frame verwenden Sie JournalEntryUnifiedViewConverter , NavigationWindow um ihren individuellen Rücknavigationsverlauf zusammenzuführen und den Navigationsverlauf in einer einzelnen Liste von Navigationsverlaufseinträgen weiterzuleiten. Die resultierende Liste enthält bis zu neun Einträge aus dem Verlauf der Zurücknavigation und bis zu neun Einträge aus dem Vorwärtsnavigationsverlauf sowie einen Eintrag für den aktuellen Inhalt.
Wenn Sie eine benutzerdefinierte Navigationsbenutzeroberfläche erstellen und eine Dropdownliste bereitstellen müssen, können Sie mit ähnlichem Effekt verwenden JournalEntryUnifiedViewConverter .
Verwendung von XAML-Attributen
Diese Klasse wird in der Regel nicht in XAML verwendet.
Konstruktoren
JournalEntryUnifiedViewConverter() |
Initialisiert eine neue Instanz der JournalEntryUnifiedViewConverter-Klasse. |
Felder
JournalEntryPositionProperty |
Bezeichnet die angefügte JournalEntryPosition-Eigenschaft. |
Angefügte Eigenschaften
JournalEntryPosition |
Ruft einen Wert ab, der angibt, ob sich ein Eintrag im Navigationsverlauf zurück oder im Navigationsverlauf vor befindet oder ob es sich um den aktuellen Inhalt eines Navigators handelt. |
Methoden
Convert(Object[], Type, Object, CultureInfo) |
Führt zwei Navigationsverlaufsstapel zusammen. |
ConvertBack(Object, Type[], Object, CultureInfo) |
Nicht implementiert. |
Equals(Object) |
Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist. (Geerbt von Object) |
GetHashCode() |
Fungiert als Standardhashfunktion. (Geerbt von Object) |
GetJournalEntryPosition(DependencyObject) |
Ruft die angefügte JournalEntryPosition-Eigenschaft für das angegebene Element ab. |
GetType() |
Ruft den Type der aktuellen Instanz ab. (Geerbt von Object) |
MemberwiseClone() |
Erstellt eine flache Kopie des aktuellen Object. (Geerbt von Object) |
SetJournalEntryPosition(DependencyObject, JournalEntryPosition) |
Legt die angefügte JournalEntryPositionProperty-Eigenschaft des angegebenen Elements fest. |
ToString() |
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Geerbt von Object) |