WP7 C# - 如何更改Pivot标题的样式

时间:2013-03-21 11:31:38

标签: c# windows-phone-7 xaml windows-phone

我需要更改Pivot标题背景和填充(Pivot控件的顶部菜单,其中是透视项目的标题)。

我试试这个:

    <controls:Pivot Grid.Row="1" Margin="0" Padding="0">
        <controls:Pivot.HeaderTemplate>
            <DataTemplate>
                <StackPanel Background="#666666" Margin="0" />
            </DataTemplate>
        </controls:Pivot.HeaderTemplate>

        <controls:PivotItem Background="#65006a">
            <controls:PivotItem.Header>
                <TextBlock FontSize="60" Margin="0">tasks</TextBlock>
            </controls:PivotItem.Header>
        </controls:PivotItem>

    </controls:Pivot>

但它没有解决它。

我该怎么做?

2 个答案:

答案 0 :(得分:4)

正确的方法是使用以下剪辑:

<controls:Pivot.HeaderTemplate>
    <DataTemplate>
        <StackPanel Background="#666666" Margin="0">
            <TextBlock FontSize="60" Margin="0" Text="{Binding}"/>
        </StackPanel>
    </DataTemplate>
</controls:Pivot.HeaderTemplate>

<controls:PivotItem Background="#65006a" Header="tasks">
</controls:PivotItem>

每个PivotItem都有头文本,然后传递给HeaderTemplate中包含的数据模板。你可以看到我在StackPanel中移动了TextBlock并通过绑定设置了它的文本。你做错了是标题模板只包含 StackPanel而且里面没有任何内容。

答案 1 :(得分:1)

在这里,我修改了一个枢轴控件的标题。我已经定义了不同颜色的不同控件,因此您可以轻松识别我所做的事情。根据需要修改此源以更改数据透视表头。

<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
          <phone:Pivot>
            <phone:Pivot.HeaderTemplate>
                <DataTemplate>
                    <StackPanel Background="Blue"
                                Margin="15,-10,0,0">
                        <TextBlock Text="{Binding}"
                                   FontSize="20"
                                   />
                    </StackPanel>
                </DataTemplate>
            </phone:Pivot.HeaderTemplate>
            <phone:PivotItem Header="item1">
                <Grid Background="Red"></Grid>
            </phone:PivotItem>
            <phone:PivotItem Header="item2">
                <Grid Background="Green"></Grid>
            </phone:PivotItem>
        </phone:Pivot> 

    </Grid>