Click to Rate and Give Feedback
MSDN
MSDN Library
.NET Development
.NET Framework 3.5
 TextFormatFlags Enumeration

  Switch on low bandwidth view
This page is specific to
Microsoft Visual Studio 2008/.NET Framework 3.5

Other versions are also available for the following:
.NET Framework Class Library
TextFormatFlags Enumeration

Specifies the display and layout information for text strings.

This enumeration has a FlagsAttribute attribute that allows a bitwise combination of its member values.

Namespace:  System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)
Visual Basic (Declaration)
<FlagsAttribute> _
Public Enumeration TextFormatFlags
Visual Basic (Usage)
Dim instance As TextFormatFlags
C#
[FlagsAttribute]
public enum TextFormatFlags
Visual C++
[FlagsAttribute]
public enum class TextFormatFlags
JScript
public enum TextFormatFlags
Member nameDescription
Bottom Aligns the text on the bottom of the bounding rectangle. Applied only when the text is a single line.
EndEllipsis Removes the end of trimmed lines, and replaces them with an ellipsis.
ExpandTabs Expands tab characters. The default number of characters per tab is eight. The WordEllipsis, PathEllipsis, and EndEllipsis values cannot be used with ExpandTabs.
ExternalLeading Includes the font external leading in line height. Typically, external leading is not included in the height of a line of text.
Default Applies the default formatting, which is left-aligned.
HidePrefix Applies to Windows 2000 and Windows XP only:

Ignores the ampersand (&) prefix character in the text. The letter that follows will not be underlined, but other mnemonic-prefix characters are still processed. For example, an input string of "A&bc&&d" with HidePrefix applied would result in output of "Abc&d".

Compare with NoPrefix and PrefixOnly.

HorizontalCenter Centers the text horizontally within the bounding rectangle.
Internal Uses the system font to calculate text metrics.
Left Aligns the text on the left side of the clipping area.
ModifyString Has no effect on the drawn text.
NoClipping Allows the overhanging parts of glyphs and unwrapped text reaching outside the formatting rectangle to show.
NoPrefix Turns off processing of prefix characters. Typically, the ampersand (&) mnemonic-prefix character is interpreted as a directive to underscore the character that follows, and the double-ampersand (&&) mnemonic-prefix characters as a directive to print a single ampersand. By specifying NoPrefix, this processing is turned off. For example, an input string of "A&bc&&d" with NoPrefix applied would result in output of "A&bc&&d".

Compare with HidePrefix and PrefixOnly.

NoFullWidthCharacterBreak Applies to Windows 98, Windows Me, Windows 2000, or Windows XP only:

Prevents a line break at a double-wide character string, so that the line-breaking rule is equivalent to single-wide character strings. For example, NoFullWidthCharacterBreak increases the readability of icon labels in Korean windows. This value has no effect unless WordBreak is also specified.

PathEllipsis Removes the center of trimmed lines and replaces it with an ellipsis.
PrefixOnly Applies to Windows 2000 or Windows XP only:

Draws only an underline at the position of the character following the ampersand (&) prefix character. Does not draw any other characters in the string. For example, an input string of "A&bc&&d" would result in output of " _ ".

Compare with HidePrefix and NoPrefix.

Right Aligns the text on the right side of the clipping area.
RightToLeft Displays the text from right to left.
SingleLine Displays the text in a single line.
TextBoxControl Specifies the text should be formatted for display on a TextBox control.
Top Aligns the text on the top of the bounding rectangle.
VerticalCenter Centers the text vertically, within the bounding rectangle.
WordBreak Breaks the text at the end of a word.
WordEllipsis Trims the line to the nearest word and an ellipsis is placed at the end of a trimmed line.
PreserveGraphicsClipping Preserves the clipping specified by a Graphics object. Applies only to methods receiving an IDeviceContext that is a Graphics.
PreserveGraphicsTranslateTransform Preserves the transformation specified by a Graphics. Applies only to methods receiving an IDeviceContext that is a Graphics.
GlyphOverhangPadding Adds padding to the bounding rectangle to accommodate overhanging glyphs.
NoPadding Does not add padding to the bounding rectangle.
LeftAndRightPadding Adds padding to both sides of the bounding rectangle.

The TextFormatFlags enumeration is used by the TextRenderer when drawing and measuring text. The TextRenderer does not support adding tab stops to drawn text, although you can expand existing tab stops using the ExpandTabs flag.

The following code example demonstrates how to use the TextFormatFlags enumeration. To run this example, paste the following code into a Windows Form. Call RenderText6 from the form's Paint event handler, passing e as PaintEventArgs.

Visual Basic
Private Sub RenderText6(ByVal e As PaintEventArgs)
    Dim flags As TextFormatFlags = TextFormatFlags.Bottom Or _
        TextFormatFlags.EndEllipsis
    TextRenderer.DrawText(e.Graphics, _
    "This is some text that will be clipped at the end.", _
    Me.Font, New Rectangle(10, 10, 100, 50), SystemColors.ControlText, flags)

End Sub


C#
private void RenderText6(PaintEventArgs e)
{
    TextFormatFlags flags = TextFormatFlags.Bottom | TextFormatFlags.EndEllipsis;
    TextRenderer.DrawText(e.Graphics, "This is some text that will be clipped at the end.", this.Font,
        new Rectangle(10, 10, 100, 50), SystemColors.ControlText, flags);
}

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

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

.NET Framework

Supported in: 3.5, 3.0, 2.0
Tags What's this?: Add a tag
Community Content   What is Community Content?
Add new content RSS  Annotations
Processing
© 2009 Microsoft Corporation. All rights reserved. Terms of Use  |  Trademarks  |  Privacy Statement
Page view tracker