Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何更改Silverlight使用的默认字体?_C#_Silverlight_Xaml_Fonts_Styles - Fatal编程技术网

C# 如何更改Silverlight使用的默认字体?

C# 如何更改Silverlight使用的默认字体?,c#,silverlight,xaml,fonts,styles,C#,Silverlight,Xaml,Fonts,Styles,有没有办法将Silverlight使用的默认字体(便携式用户界面)更改为自定义字体,而不为每个UI元素指定样式?我希望避免显式设置样式或将FontFamily绑定到静态资源 我想我可以使用隐式样式,但我必须为每种UI控件类型使用隐式样式:按钮、文本块、文本框等等 我希望我能把这个添加到我的风格词典中(当然这是不允许的): “TCCEB.TTF#Tw Cen MT” 我们就是这么做的: <Application.Resources> <FontFamily x:Key="

有没有办法将Silverlight使用的默认字体(便携式用户界面)更改为自定义字体,而不为每个UI元素指定样式?我希望避免显式设置样式或将FontFamily绑定到静态资源

我想我可以使用隐式样式,但我必须为每种UI控件类型使用隐式样式:按钮、文本块、文本框等等

我希望我能把这个添加到我的风格词典中(当然这是不允许的):

“TCCEB.TTF#Tw Cen MT”
我们就是这么做的:

<Application.Resources>
    <FontFamily x:Key="DefaultFontFamily">/MyName.MyApp;component/Assets/segoeui.ttf#Segoe UI</FontFamily>

    <Style TargetType="Button">
        <Setter Property="FontFamily" Value="{StaticResource DefaultFontFamily}"/>
        <Setter Property="FontSize" Value="14.666"/>
    </Style>

    <Style TargetType="HyperlinkButton">
        <Setter Property="FontFamily" Value="{StaticResource DefaultFontFamily}"/>
        <Setter Property="FontSize" Value="14.666"/>
    </Style>

    ...

</Application.Resources>

/MyName.MyApp;组件/资产/segoui.ttf#Segoe UI
...

恐怕还远远不够完美。

如果您使用ContentControl包装整个应用程序,并在其中指定其FontFamily,只要您不在任何子控件中指定FontFamily,字体应该向下流到所有子控件。

谢谢,它可以工作。我还必须为ChildWindow设置一个隐式样式(用于模态对话),因为它不继承FontFamily。
<Application.Resources>
    <FontFamily x:Key="DefaultFontFamily">/MyName.MyApp;component/Assets/segoeui.ttf#Segoe UI</FontFamily>

    <Style TargetType="Button">
        <Setter Property="FontFamily" Value="{StaticResource DefaultFontFamily}"/>
        <Setter Property="FontSize" Value="14.666"/>
    </Style>

    <Style TargetType="HyperlinkButton">
        <Setter Property="FontFamily" Value="{StaticResource DefaultFontFamily}"/>
        <Setter Property="FontSize" Value="14.666"/>
    </Style>

    ...

</Application.Resources>