JournalEntryUnifiedViewConverter Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
JournalEntryUnifiedViewConverter unisce la cronologia di spostamento indietro e la cronologia di spostamento avanti (come esposto da Frame o NavigationWindow) in un unico menu di spostamento.
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
- Ereditarietà
-
JournalEntryUnifiedViewConverter
- Implementazioni
Esempio
Nell'esempio seguente viene illustrato come costruire un menu della cronologia di spostamento basato su testo. Il menu usa JournalEntryUnifiedViewConverter per combinare sia le cronologie di spostamento indietro che in avanti dello strumento di spostamento ospitato 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>
Commenti
Frame Sia NavigationWindow che visualizzano il riquadro di spostamento che supporta la navigazione cronologia usando i meccanismi seguenti:
Pulsante per lo spostamento indietro di una parte del contenuto alla volta.
Pulsante per spostarsi in avanti di una parte del contenuto alla volta.
Elenco a discesa che mostra:
- Elenco combinato di un massimo di nove elementi nella cronologia di spostamento indietro e fino a nove elementi nella cronologia di spostamento in avanti.
- Posizione del contenuto corrente rispetto alla cronologia di navigazione avanti e indietro.
La cronologia di navigazione viene archiviata da e NavigationWindowFrame nelle proprietà seguenti:
Cronologia navigazione indietro: Frame.BackStack, NavigationWindow.BackStack.
Cronologia di navigazione inoltrata: Frame.ForwardStack, NavigationWindow.ForwardStack.
Per creare l'elenco NavigationWindow a discesa e Frame usare JournalEntryUnifiedViewConverter per unire la cronologia di spostamento indietro e la cronologia di spostamento in avanti in un unico elenco di voci della cronologia di navigazione. L'elenco risultante contiene fino a nove voci dalla cronologia di spostamento indietro e fino a nove voci dalla cronologia di spostamento in avanti, oltre a una voce per il contenuto corrente.
Se si crea un'interfaccia utente di spostamento personalizzata e si deve fornire un elenco a discesa, è possibile usare JournalEntryUnifiedViewConverter per un effetto simile.
Utilizzo degli attributi XAML
Questa classe non viene in genere usata in XAML.
Costruttori
| Nome | Descrizione |
|---|---|
| JournalEntryUnifiedViewConverter() |
Inizializza una nuova istanza della classe JournalEntryUnifiedViewConverter. |
Campi
| Nome | Descrizione |
|---|---|
| JournalEntryPositionProperty |
Identifica la JournalEntryPosition proprietà associata. |
Proprietà associate
| Nome | Descrizione |
|---|---|
| JournalEntryPosition |
Ottiene o imposta un valore che specifica se una voce si trova nella cronologia di spostamento indietro, nella cronologia di navigazione in avanti o nel contenuto corrente di uno strumento di navigazione. |
Metodi
| Nome | Descrizione |
|---|---|
| Convert(Object[], Type, Object, CultureInfo) |
Unisce due stack di cronologia di navigazione. |
| ConvertBack(Object, Type[], Object, CultureInfo) |
Non implementata. |
| Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
| GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
| GetJournalEntryPosition(DependencyObject) |
Ottiene la JournalEntryPosition proprietà associata per l'elemento specificato. |
| GetType() |
Ottiene il Type dell'istanza corrente. (Ereditato da Object) |
| MemberwiseClone() |
Crea una copia superficiale del Objectcorrente. (Ereditato da Object) |
| SetJournalEntryPosition(DependencyObject, JournalEntryPosition) |
Imposta la JournalEntryPositionProperty proprietà associata dell'elemento specificato. |
| ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |