Sto cercando di capire come impostare FontFamily nella mia app.xaml in modo tale da poter applicare dichiaratamente quello stile ovunque sia necessario. Nel ResourceDictionary
posso applicare qualcosa di simile:Come memorizzare FontFamily come risorsa statica?
<System:Double x:Key="SmallTextSize">10</System:Double>
Quello che voglio fare, allora è qualcosa di simile:
<FontFamily x:Key="MainFont">Wingdings</FontFamily>
Ma, l'unica cosa che posso andare al lavoro è uno stile implicita, che richiede un obiettivo e più dichiarazioni del carattere che voglio usare. Devo essere in grado di applicare lo stile alla fine con la proprietà FontFamily di qualsiasi controllo.
Ecco il più vicino posso venire attualmente:
<System:String x:Key="MainFont">Wingdings</System:String>
<Style TargetType="UserControl">
<Setter Property="FontFamily" Value="{StaticResource MainFont}"></Setter>
</Style>
Questa implementazione non funziona su qualcosa di simile perché si aspetta MainFont sia un FontFamily, non una stringa:
<TextBlock Text="{Binding}" Margin="0,0,0,4" FontWeight="Normal" FontFamily="{StaticResource MainFont}" FontSize="14.667" />
Come dovrebbe Lo gestisco? Grazie!
Ecco una possibile soluzione se non si trova una risposta più adatta: utilizzare una proprietà di dipendenza allegata per impostare 'FontFamily'. Otterrai quindi qualcosa del tipo: ' '. –
Grazie, ma questo è l'esatto opposto di quello che sto cercando. Sto cercando di consolidare gli stili in un'applicazione Silverlight MOLTO grande, quindi applicare gli stili a quel livello significherebbe migliaia di modifiche. –
Forse mi manca qualcosa, ma se hai intenzione di impostare i caratteri come nell'esempio sopra, cioè 'FontFamily =" {StaticResource MainFont} "', allora richiederà lo stesso identico numero di modifiche. –