2011-10-07 4 views
5

Czy istnieje jakiś sposób, aby zmienić domyślną czcionkę (Portable User Interface) wykorzystywany przez Silverlight do niestandardowej czcionki bez określania styl dla każdego elementu UI? Chcę uniknąć konieczności jawnego ustawienia stylu lub powiązania rodziny czcionek z statycznym zasobem.Jak zmienić domyślną czcionkę używaną przez Silverlight?

Przypuszczam mogę używać stylów ukryte, ale muszę to zrobić dla każdego typu interfejsu sterowania: Button, TextBlock, TextBox, etc, etc ...

Chciałabym tylko dodać to do mojego Słownik styl (ale oczywiście nie jest to dozwolone):

<FontFamily >"TCCEB.TTF#Tw Cen MT"</FontFamily> 

Odpowiedz

3

Jeśli otoczysz całą aplikację za pomocą ContentControl i określisz jej rodzinę czcionek, o ile nie określisz rodziny czcionek w żadnym z elementów sterujących podrzędnych, czcionka powinna spłynąć do wszystkich z nich.

+1

Dzięki, to działa. Musiałem również ustawić domyślny styl dla ChildWindow (dla modalnych dialogów), ponieważ to nie dziedziczy FontFamily. –

+0

Dobrze o tym wiedzieć. ;) –

0

to co zrobiliśmy:

<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> 

dalekie od doskonałości obawiam.