JournalEntryUnifiedViewConverter Classe

Definizione

JournalEntryUnifiedViewConverter unisce la cronologia di navigazione indietro e la cronologia di navigazione avanti (come in Frame o NavigationWindow) in un singolo menu di navigazione in stile Windows Internet Explorer 7.

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 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

NavigationWindow Sia Frame che visualizzano il riquadro di spostamento che supporta lo spostamento della cronologia usando i meccanismi seguenti:

  • Pulsante per lo spostamento indietro di un contenuto alla volta.

  • Pulsante per lo spostamento avanti di una parte di contenuto alla volta.

  • Elenco a discesa di Windows Internet Explorer 7 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 indietro e successiva.

La cronologia di spostamento viene archiviata da entrambe NavigationWindow le proprietà e Frame nelle proprietà seguenti:

Cronologia di spostamento indietro: Frame.BackStack, NavigationWindow.BackStack.

Cronologia di spostamento in avanti: Frame.ForwardStack, NavigationWindow.ForwardStack.

Per creare l'elenco NavigationWindow a discesa di Windows Internet Explorer a 7 stili 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 navigazione personalizzata ed è necessario fornire un elenco a discesa di Windows Internet Explorer in stile 7, è possibile usare JournalEntryUnifiedViewConverter un effetto simile.

Uso della sintassi XAML per gli attributi

Questa classe non viene in genere usata in XAML.

Costruttori

JournalEntryUnifiedViewConverter()

Inizializza una nuova istanza della classe JournalEntryUnifiedViewConverter.

Campi

JournalEntryPositionProperty

Identifica la proprietà associata JournalEntryPosition.

Proprietà associate

JournalEntryPosition

Ottiene o imposta un valore che specifica se una voce si trova nella cronologia di navigazione indietro o nella cronologia di navigazione avanti oppure se corrisponde al contenuto corrente di uno strumento di navigazione.

Metodi

Convert(Object[], Type, Object, CultureInfo)

Unisce due stack della cronologia di navigazione.

ConvertBack(Object, Type[], Object, CultureInfo)

Non implementato.

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 proprietà associata JournalEntryPosition per l'elemento specificato.

GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
SetJournalEntryPosition(DependencyObject, JournalEntryPosition)

Imposta la proprietà associata JournalEntryPositionProperty dell'elemento specificato.

ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)

Si applica a

Vedi anche