2015-02-21 1 views
3

Я хочу изменить семейство шрифтов, размер шрифта и цвет переднего плана для заголовка HubSection.Как установить HubSection Header Style

Что-то вроде этого:

<Style TargetType="HubSection" x:Key="HubSection"> 
    <Setter Property="Header"> 
     <Setter.Value> 
      <Setter Property="FontSize" Value="100"></Setter> 
      <Setter Property="Foreground" Value="Yellow"></Setter> 
     </Setter.Value>    
    </Setter>   
</Style> 


<HubSection Width="500" Header="Section Name" Style="{StaticResource HubSection}"> 

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

ответ

4

Недвижимость, которую вы хотите изменить, не Header, но HeaderTemplate. Вот мой рабочий пример:

<Style TargetType="HubSection"> 
    <Setter Property="HeaderTemplate"> 
     <Setter.Value> 
      <DataTemplate> 
       <TextBlock Text="{Binding}" 
          FontSize="100" 
          Foreground="Yellow"/> 
      </DataTemplate> 
     </Setter.Value> 
    </Setter> 
</Style> 

Если вы хотите применить этот стиль для всех Hub управления в вашем приложении, просто удалите Key и поместить его в файлApp.xaml в Resources.

0

Если вы не хотите, чтобы переопределить шаблон заголовка можно переопределить тему по умолчанию ресурсы:

<FontWeight x:Key="HubSectionHeaderThemeFontWeight">SemiLight</FontWeight> 
    <x:Double x:Key="HubSectionHeaderThemeFontSize">26.667</x:Double> 

К сожалению, не существует каких-либо специальных ресурсов для FontFamily и переднего плана. Шаблон использует значения по умолчанию от кнопки. Таким образом, вы окажете влияние на все приложение. Но во многих случаях это то, что вы хотите, верно?

<FontFamily x:Key="ContentControlThemeFontFamily">Segoe UI</FontFamily> 
<SolidColorBrush x:Key="ButtonForegroundThemeBrush" Color="Red" />