1

我是 Windows Phone 8 开发的新手。我以前开发过 ASP.NET 网站。

我的页面(在 WP8 应用程序中)共享相同的页眉和页脚。

那么在 windows phone 8 中实现母版页的最佳方法是什么?

我遇到了一些使用Frametag 的解决方案;但它们不适用。

非常感谢任何帮助。

PS:我正在使用 MVVM Light Toolkit

我遇到了这个解决方案,但它是一种解决方法:

1-<ControlTemplatex:Key="Decorator" TargetType="ContentControl">在 App.xaml 中定义 2- 在每个页面中我想要我刚刚添加的模板<ContentControl Template="{StaticResource Decorator}">

这是一个详细的示例:

应用程序.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

4

0 回答 0