2013-07-09 75 views
4

目前,我有一個包含主題/模板和字體(作爲資源)的類庫項目。然後我在主WPF應用程序項目中引用名爲Shared.UI的項目。一個MergedDictionary標籤內使用來自其他程序集的字體資源

<ResourceDictionary Source="pack://application:,,,/Shared.UI;component/Skin.xaml" /> 

我現在用的是引用它。

我遇到的問題是主要的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

檢查這個環節,希望它有助於 http://social.msdn.microsoft.com/Forums/vstudio/en-US/068d9600-93e6-45e4-af37-2b04e4b41855/how-to-load-a-font-from-a-resource-only-dll-in-c

<TextBlock><Run FontFamily="/FontClassLibrary;Component/#YourFontName" FontSize="20">Your Text</Run></TextBlock> 
+2

這句話雖然從理論上回答這個問題,[但最好(http://meta.stackexchange.com/q/8259)包括這裏的答案的基本部分,並提供參考鏈接。這樣,如果鏈接失效,您的答案仍然有用。您還需要解釋***這是如何回答這個問題的,以及它爲什麼會解決這個問題。 –

+0

謝謝,我現在要記住這一點。 – Nitesh

+0

有沒有什麼方法可以在Style中定義,或者是否需要在那裏始終保存那個RUN標籤以使字體正確顯示?如果我不得不在每一個控件中都這樣做,那麼我可能只是將字體導入到主項目中......它看起來好像不能擴展。 – jyanks

相關問題