メニュー項目をナビゲートすると、戻るためのパンくずリストが表示される機能を作成しています。Windows 8 アプリでこれを作成するために、アイテムのコレクションを生成し、メニューをナビゲートしながらそのコレクションに追加しています。
ブレッドクラムを表示するための xaml コードは次のとおりです。
<ListView VerticalAlignment="Top"
HorizontalAlignment="Left"
Margin="120,60,0,0"
ItemsSource="{Binding Parents}">
<ListView.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Horizontal"/>
</ItemsPanelTemplate>
</ListView.ItemsPanel>
<ListView.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock Text=">>" />
<Button Content="{Binding Name}" Command="{Binding OpenCommand}" CommandParameter="{Binding}" />
</StackPanel>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
これは機能しますが、ボタンのバインディングに 100% 満足しているわけではありません。OpenCommand
問題は、全体的なコントロールのビュー モデルで既に稼働している機能を呼び出していることです。これには、内部項目コマンドにプロパティが必要なようです。
Command=
ボタンの属性を、リスト項目自体ではなく、コントロールのビュー モデル全体のコマンドにバインドすることはできますか?