从另一个程序集中使用字体资源

8
目前,我有一个类库项目,其中包含主题/模板和字体(作为资源)。然后,在我的主WPF应用程序项目中引用该名为Shared.UI的项目。使用以下方式进行引用:
<ResourceDictionary Source="pack://application:,,,/Shared.UI;component/Skin.xaml" />

在MergedDictionary标记内。

我遇到的问题是主要的WPF应用程序无法使用从构建为资源的项目中的字体。

在我的Shared.UI/Skins.xaml文件中,我有:

<!-- LABEL -->
<Style TargetType="{x:Type Label}">
    <Setter Property="FontFamily" Value="./resources/#Helvetica Neue" />
    <Setter Property="Foreground" Value="{DynamicResource PrimaryBlue}" />
    <Setter Property="FontSize" Value="12" />
</Style>

我假设这不会在我的主要WPF应用程序中工作,因为它在自己的./resources中查找#Helvetica Neue并未能找到它(因为它在Shared.UI中)。我尝试在资源文件中显式引用/Shared.UI;component/resources/#Helvetica Neue,但对我来说没有起作用。
1个回答

2

2
虽然这理论上回答了问题,但最好还是在这里包含答案的关键部分,并提供链接作为参考。这样,如果链接失效,你的答案仍然有用。你还需要解释如何回答问题以及为什么它会解决这个问题。 - Cody Gray
有没有办法可以在样式中定义字体,或者我总是需要在其中添加RUN标记才能正确显示字体?如果我不得不在每个控件上都这样做,那么我可能会将字体导入到主项目中...这似乎不太灵活。 - jyanks
那么,将“fonts”文件夹复制到特定项目中只是更简单、更清洁的做法。 - Starwave

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接