TextBlock.FontSize Property

Gets or sets the top-level font size for the TextBlock.

Namespace:  System.Windows.Controls
Assembly:  PresentationFramework (in PresentationFramework.dll)
XMLNS for XAML: http://schemas.microsoft.com/winfx/2006/xaml/presentation, http://schemas.microsoft.com/netfx/2007/xaml/presentation

'Declaration
<TypeConverterAttribute(GetType(FontSizeConverter))> _
<LocalizabilityAttribute(LocalizationCategory.None)> _
Public Property FontSize As Double
<object FontSize="double"/>
- or -
<object FontSize="qualifiedDouble"/>

XAML Values

double

Double

String representation of a Double value equal to or greater than 0.0 but smaller than PositiveInfinity. An unqualified value is measured in device independent pixels. Strings need not explicitly include decimal points.

qualifiedDouble

A double value as described above, followed by one of the following unit specifiers: px, in, cm, pt.

px (default) is device-independent units (1/96th inch per unit)

in is inches; 1in==96px

cm is centimeters; 1cm==(96/2.54) px

pt is points; 1pt==(96/72) px

Property Value

Type: System.Double
The desired font size to use in device independent pixels). The default is determined by the SystemFonts.MessageFontSize value.

Any FontSize settings on child elements override this top-level setting.

This dependency property also has an attached property usage. In XAML, the usage is <object TextBlock.FontSize="value".../>, where object is an object element (typically a flow element) contained within a TextBlock, and value is one of the string-format values as explained in XAML Values. In code, the attached property usage is supported by GetFontSize and SetFontSize. The attached property usage is not common, because most elements that can be contained in a TextBlock support an analogous nonattached FontSize property, which the TextBlock uses for rendering.

The following example shows how to set the FontSize attribute of a TextBlock element.

<TextBlock 
  Name="textBlock"

  Background="AntiqueWhite" 
  Foreground="Navy" 

  FontFamily="Century Gothic"
  FontSize="12"
  FontStretch="UltraExpanded"
  FontStyle="Italic"
  FontWeight="UltraBold"

  LineHeight="Auto"
  Padding="5,10,5,10"
  TextAlignment="Center"
  TextWrapping="Wrap"

  Typography.NumeralStyle="OldStyle"
  Typography.SlashedZero="True"
>
  <Run Background="LightGreen">Text run 1.</Run>
  <LineBreak/><Run Background="LightBlue">Text run 2.</Run>
  <LineBreak/><Run Background="LightYellow">Text run 3.</Run>
</TextBlock>

The following example shows how to set the FontSize property programmatically.

			Dim textBlock As New TextBlock(New Run("A bit of text content..."))

			textBlock.Background = Brushes.AntiqueWhite
			textBlock.Foreground = Brushes.Navy

			textBlock.FontFamily = New FontFamily("Century Gothic")
			textBlock.FontSize = 12
			textBlock.FontStretch = FontStretches.UltraExpanded
			textBlock.FontStyle = FontStyles.Italic
			textBlock.FontWeight = FontWeights.UltraBold

			textBlock.LineHeight = Double.NaN
			textBlock.Padding = New Thickness(5, 10, 5, 10)
			textBlock.TextAlignment = TextAlignment.Center
			textBlock.TextWrapping = TextWrapping.Wrap

			textBlock.Typography.NumeralStyle = FontNumeralStyle.OldStyle
			textBlock.Typography.SlashedZero = True

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft