TextBlock.LineHeight Property
[This documentation is for preview only, and is subject to change in later releases. Blank topics are included as placeholders.]
Gets or sets the height of each line of content.
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
<object LineHeight="double"/> - or - <object LineHeight="qualifiedDouble"/> - or - <object LineHeight="Auto"/>
XAML Values
Property Value
Type: System.DoubleThe height of line, in device independent pixels, in the range of 0.0034 to 160000. A value of Double.NaN (equivalent to an attribute value of "Auto") indicates that the line height is determined automatically from the current font characteristics. The default is Double.NaN.
| Exception | Condition |
|---|---|
| ArgumentException | LineHeight is set to a non-positive value. |
Changing this value does not change the height of the associated text; rather, it changes the height of the line that contains the text. To change the size of the text, use the FontSize property.
In addition to this property, the layout of lines in a TextBlock is affected by its LineStackingStrategy property.
This dependency property also has an attached property usage. In XAML, the usage is <object TextBlock.LineHeight="value".../>, where object is an object element (typically a flow element) contained within a TextBlock, and value is a string as explained in XAML Values. In code, the attached property usage is supported by GetLineHeight and SetLineHeight. The attached property usage is not common.
The following example shows how to set the LineHeight 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 LineHeight property programmatically.
TextBlock textBlock = 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;
Windows 8 Consumer Preview, Windows Server 8 Beta, Windows 7, Windows Server 2008 SP2, 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.