【问题标题】:How to customize the ContentPage Title in Xamarin?如何在 Xamarin 中自定义 ContentPage 标题?
【发布时间】:2017-05-02 11:00:34
【问题描述】:

在 Xamarin UWP 手机视图中,内容页面标题字体太大。如何在 Windows 手机中自定义页面标题字体大小?

谢谢, Santhiya A

【问题讨论】:

    标签: xamarin uwp


    【解决方案1】:

    在自定义页面标题字体大小之前,您可以参考 Xamarin.Forms PageControlStyle

    <uwp:FormsCommandBar.Content>
        <Border x:Name="TitleArea" Visibility="{TemplateBinding TitleVisibility}" Height="{ThemeResource TitleBarHeight}">
            <TextBlock Text="{Binding Title}" TextWrapping="NoWrap" VerticalAlignment="Center" Margin="10,0,0,0" Foreground="{TemplateBinding TitleBrush}" Style="{ThemeResource TitleTextBlockStyle}" />
        </Border>
    </uwp:FormsCommandBar.Content>
    

    可以看到,在uwp平台中ContentPage的title是TextBlock渲染的,TextBlock的style是TitleTextBlockStyle。所以你可以通过修改TitleTextBlockStyle来改变磁贴的字体大小。

    <Application.Resources>
         <ResourceDictionary>
             <Style
                 x:Key="TitleTextBlockStyle"
                 BasedOn="{StaticResource BaseTextBlockStyle}"
                 TargetType="TextBlock">
                 <Setter Property="FontWeight" Value="SemiLight" />
                 <Setter Property="FontSize" Value="18" />
                 <Setter Property="OpticalMarginAlignment" Value="TrimSideBearings" />
             </Style>
         </ResourceDictionary>
     </Application.Resources>
    

    【讨论】:

    • PageControl 是否与 ContentPage 相关?对不起,我无法获得它,如何使用它?我的要求是更改 PageTitle 默认字体大小。
    • 是的。它们是相关的。您只能将 TitleTextBlockStyle 放在 uwp 客户端项目的 App.xaml 文件中。标题字体大小会生效。
    • 是否可以只为 WindowsPhone 应用样式?
    • 朱 关于这个问题的任何想法。 *.com/questions/43708474/…
    • 我认为您错过了您提到的案例的uwp 标签。