JournalEntryUnifiedViewConverter クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
JournalEntryUnifiedViewConverter は、( Frame または NavigationWindowによって公開される) ナビゲーションバック履歴とナビゲーション転送履歴を 1 つのナビゲーション メニューにマージします。
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
- 継承
-
JournalEntryUnifiedViewConverter
- 実装
例
次の例は、テキストベースのナビゲーション履歴メニューを作成する方法を示しています。 メニューでは、 JournalEntryUnifiedViewConverter を使用して、ホストされている 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>
注釈
FrameとNavigationWindowの両方に、次のメカニズムを使用した履歴ナビゲーションをサポートするナビゲーション クロムが表示されます。
一度に 1 つのコンテンツに戻るためのボタン。
一度に 1 つのコンテンツを前方に移動するためのボタン。
次を示すドロップダウン リスト。
- バック ナビゲーション履歴の最大 9 つの項目と、前方ナビゲーション履歴内の最大 9 つの項目の組み合わせリスト。
- 戻るナビゲーション履歴と前方ナビゲーション履歴の両方に関する現在のコンテンツの位置。
ナビゲーション履歴は、 NavigationWindow と Frame の両方で次のプロパティに格納されます。
戻るナビゲーション履歴: Frame.BackStack、 NavigationWindow.BackStack。
転送ナビゲーション履歴: Frame.ForwardStack、 NavigationWindow.ForwardStack。
ドロップダウン リストを作成するには、NavigationWindowし、FrameJournalEntryUnifiedViewConverterを使用して、個々の戻るナビゲーション履歴と転送ナビゲーション履歴を 1 つのナビゲーション履歴エントリの一覧にマージします。 結果の一覧には、バック ナビゲーション履歴から最大 9 個のエントリと、前方ナビゲーション履歴から最大 9 個のエントリ、および現在のコンテンツのエントリが含まれます。
カスタム ナビゲーション UI を作成し、ドロップダウン リストを指定する必要がある場合は、 JournalEntryUnifiedViewConverter を使用して同様の効果を得ることができます。
XAML 属性の使用法
通常、このクラスは XAML では使用されません。
コンストラクター
| 名前 | 説明 |
|---|---|
| JournalEntryUnifiedViewConverter() |
JournalEntryUnifiedViewConverter クラスの新しいインスタンスを初期化します。 |
フィールド
| 名前 | 説明 |
|---|---|
| JournalEntryPositionProperty |
JournalEntryPosition添付プロパティを識別します。 |
添付プロパティ
| 名前 | 説明 |
|---|---|
| JournalEntryPosition |
エントリが戻るナビゲーション履歴、前方ナビゲーション履歴、またはナビゲーターの現在のコンテンツであるかどうかを指定する値を取得または設定します。 |
メソッド
| 名前 | 説明 |
|---|---|
| Convert(Object[], Type, Object, CultureInfo) |
2 つのナビゲーション履歴スタックをマージします。 |
| ConvertBack(Object, Type[], Object, CultureInfo) |
実装されていません。 |
| Equals(Object) |
指定したオブジェクトが現在のオブジェクトと等しいかどうかを判断します。 (継承元 Object) |
| GetHashCode() |
既定のハッシュ関数として機能します。 (継承元 Object) |
| GetJournalEntryPosition(DependencyObject) |
指定した要素の JournalEntryPosition 添付プロパティを取得します。 |
| GetType() |
現在のインスタンスの Type を取得します。 (継承元 Object) |
| MemberwiseClone() |
現在の Objectの簡易コピーを作成します。 (継承元 Object) |
| SetJournalEntryPosition(DependencyObject, JournalEntryPosition) |
指定した要素の JournalEntryPositionProperty 添付プロパティを設定します。 |
| ToString() |
現在のオブジェクトを表す文字列を返します。 (継承元 Object) |