来自Resources的WPF加载字体

时间:2018-03-29 07:54:04

标签: c# wpf fonts resources

因此,在快速搜索后,我找到了这个解决方案:

我的Resources文件夹里面有一个名为Abstract的文件夹。

<Window.Resources>
   <Style x:Key="Abstract">
       <Setter Property="Label.FontFamily" Value="Resources/#Abstract" />
   </Style>
</Window.Resources>

我的Label

<Label Name="lblValue"
       Content="Value"                                
       Style="{DynamicResource Abstract}"
       FontSize="14"/>

没有任何事情发生,我只是看不到我想要的font

1 个答案:

答案 0 :(得分:1)

您需要注意内存泄漏。

使用相对路径的任何字体引用都会导致内存泄漏。 这样做的方法是使用绝对路径。 是的,这是令人讨厌的。

看到这个: WPF TextBlock memory leak when using Font

我最近一直致力于使用花哨字体并调查问题。它仍然存在.net 4.7。 如果你有几个使用相同ttf的应用程序,我不会使用临时文件夹,将你的ttf发送到与你的exe相同的文件夹或本地appdata。

当我了解应用程序的这个特定方面时,我的计划是编写一个自定义标记扩展,这将允许我传递一个简短的名称,然后在用户的计算机上找到绝对路径。我将使用appdata。

您的直接问题是因为您没有使用相对路径。把/放在你的路径前面。

值= “/资源/#摘要”

但是你会有内存泄漏。