gpt4 book ai didi

c# - 在 Windows 8.1 应用程序中更改全局应用程序字体

转载 作者:太空宇宙 更新时间:2023-11-03 10:46:31 25 4
gpt4 key购买 nike

网上有很多关于如何嵌入自定义字体、创建字体样式并将其应用于控件的文章。但是如何覆盖全局应用程序字体,以便每个控件都使用该字体而不是为每个控件手动设置 FontFamily 属性。就我而言,我不希望使用自定义字体作为全局字体,而是使用系统字体,例如 Tahoma 或 Calibri。

最佳答案

在 winrt 中,所有控件 ContentPresenter 的默认 Fontfamily 是 Segoe Ui,它的键是 ContentControlThemeFontFamily

-*您可以从 resourcedictionary 更改或覆盖按钮、组合框项、列表框项等的字体系列,因为它们具有模板属性(contenpresenter 或 itempresenter)

1) 转到 StandardStyles.xaml

enter image description here

2) 添加<FontFamily x:Key="ContentControlThemeFontFamily">Tahoma</FontFamily>在 ThemeDictionaries 的默认和 Highcontrast 资源字典中,如下所示。

   <ResourceDictionary.ThemeDictionaries>
<ResourceDictionary x:Key="Default">
<x:String x:Key="BackButtonGlyph">&#xE071;</x:String>
<x:String x:Key="BackButtonSnappedGlyph">&#xE0BA;</x:String>
<FontFamily x:Key="ContentControlThemeFontFamily">Tahoma</FontFamily>
</ResourceDictionary>
<ResourceDictionary x:Key="HighContrast">
<FontFamily x:Key="ContentControlThemeFontFamily">Tahoma</FontFamily>
<x:String x:Key="BackButtonGlyph">&#xE071;</x:String>
<x:String x:Key="BackButtonSnappedGlyph">&#xE0C4;</x:String>
</ResourceDictionary>
</ResourceDictionary.ThemeDictionaries>

但是 Textblock 没有模板属性,所以你可以像下面这样更改它的属性

<强>1。第一种方法

 <TextBlock  FontFamily="{StaticResource ContentControlThemeFontFamily }" >dfdsfsdf</TextBlock>

<强>2。第二种方法

<Page
x:Class="App3.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:App3"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d" FontFamily="{StaticResource ContentControlThemeFontFamily}">
<Grid>
<TextBlock>Hello World</TextBlock>
</Grid>

关于c# - 在 Windows 8.1 应用程序中更改全局应用程序字体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23150457/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com