2013-03-21 3 views
3

Мне нужно изменить фон заголовка и отступы (верхнее меню элемента Pivot, где находятся заголовки элементов поворота).WP7 C# - Как изменить стиль заголовка 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> 

Но оно не решить.

Как я могу это сделать?

+1

ки, извините, я добавил код – Earlgray

+0

вы не имеете никакого содержания, я имею в виду, что ваш код правильный, но заголовок пуст –

+0

возможно дубликат [Изменить фон заголовка и заголовка в управлении шарнирным] (HTTP://stackoverflow.com/questions/4245046/change-background-of-title-and-header-in-pivot-control) –

ответ

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. Вы можете видеть, что я переместил TextBlock внутри StackPanel и установил его текст с помощью привязки. Вы ошиблись в том, что шаблон заголовка содержал только 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>