FontStretch Property

TextBlock.FontStretch Property

 

Gets or sets the top-level font-stretching characteristics for the TextBlock.

Namespace:   System.Windows.Controls
Assembly:  PresentationFramework (in PresentationFramework.dll)

public FontStretch FontStretch { get; set; }

Property Value

Type: System.Windows.FontStretch

A member of the FontStretch class specifying the desired font-stretching characteristics to use. The default is FontStretches.Normal.

Any FontStretch 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.FontStretch="value".../>, where object is an object element (typically a flow element) contained within a TextBlock, and value is one of the string-format property names of the FontStretch class. In code, the attached property usage is supported by GetFontStretch and SetFontStretch. The attached property usage is not common, because most elements that can be contained in a TextBlock support an analogous nonattached FontStretch property, which the TextBlock uses for rendering.

The following example shows how to set the FontStretch 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 FontStretch 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;

.NET Framework
Available since 3.0
Silverlight
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Return to top
Show:
© 2016 Microsoft