Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

WPF global font size

Tags:

wpf

fonts

I'm creating a WPF app and I would like to know the best way to be able to change the font size for every element in the ui. Do I create a resource dictionary and set Styles to set the font size for all the controls I use?

What is the best practice?

like image 380
Jose Avatar asked May 21 '09 15:05

Jose


1 Answers

I'd do it this way:

<Window.Resources>         <Style TargetType="{x:Type Control}" x:Key="baseStyle">             <Setter Property="FontSize" Value="100" />         </Style>         <Style TargetType="{x:Type Button}" BasedOn="{StaticResource baseStyle}"></Style>         <Style TargetType="{x:Type Label}" BasedOn="{StaticResource baseStyle}"></Style>         <Style TargetType="{x:Type TextBox}" BasedOn="{StaticResource baseStyle}"></Style>         <Style TargetType="{x:Type ListView}" BasedOn="{StaticResource baseStyle}"></Style>         <!-- ComboBox, RadioButton, CheckBox, etc... -->     </Window.Resources> 

That way, if I want to change ALL the controls, I'd just have to change the "baseStyle" style, the rest would just inherit from it. (That's what BasedOn property those, you can also extend the base style if you create other setters inside of the inherited style)

like image 155
Carlo Avatar answered Oct 02 '22 09:10

Carlo