Windows Phone 8 の開発は初めてです。以前に ASP.NET Web サイトを開発したことがあります。
マイページ (WP8 アプリケーション内) は同じヘッダーとフッターを共有します。
では、Windows Phone 8 のようにマスター ページを実装する最良の方法は何ですか?
Frame
tag ;を使用するいくつかのソリューションに出くわしました。しかし、それらは適用されませんでした。
どんな助けでも大歓迎です。
PS: MVVM Light Toolkit を使用しています
私はこの解決策に出くわしましたが、それは回避策です:
1- <ControlTemplatex:Key="Decorator" TargetType="ContentControl">
App.xaml で定義する 2- 各ページで、テンプレートを追加したい<ContentControl Template="{StaticResource Decorator}">
少し詳細なサンプルを次に示します。
App.xaml
<ControlTemplate x:Key="Decorator" TargetType="ContentControl">
<Grid x:Name="LayoutRoot">
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="5*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Grid x:Name="HeaderPanel" Grid.Row="0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="4*" />
</Grid.ColumnDefinitions>
<Button x:Name="BackBtn" Grid.Column="0" />
<TextBlock Grid.Column="1" Text="{Binding Title}" />
</Grid>
<ContentPresenter Grid.Row="1" />
<Grid x:Name="BottomPanel" Grid.Row="2" Height="50">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Button Grid.Column="0" />
<Button Grid.Column="1" />
<Button Grid.Column="2" />
<Button Grid.Column="3" />
</Grid>
</Grid>
</ControlTemplate>
任意の xaml ページで、そのコンテンツ テンプレートを埋め込みたい場合は、次を追加するだけです。
<ContentControl Template="{StaticResource Decorator}">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="*" />
<RowDefinition Height="5*" />
</Grid.RowDefinitions>
<TextBlock Grid.Row="0" Text="Grid Title" />
<Grid x:Name="ContentGrid" Grid.Row="1">
</Grid>
</ContentControl>
リソース: http://www.codeproject.com/Articles/82464/How-to-Embed-Arbitrary-Content-in-a-WPF-Control