Span Class
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.UI.Xaml.Markup.ContentProperty(Name="Inlines")]
class Span : Inline
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.UI.Xaml.Markup.ContentProperty(Name="Inlines")]
public class Span : Inline
Public Class Span
Inherits Inline
<Span .../>
-or-
<Span ...>
oneOrMoreInlines
</Span>
-or-
<Span ...>
mixedContent
</Span>
- Inheritance
- Derived
- Attributes
Windows requirements
Device family |
Windows 10 (introduced in 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (introduced in v1.0)
|
Remarks
You can use Span as an object element in XAML to enclose text. This enables a similar usage to how you might use the span
tag in HTML. For this usage you'd set the attributes that are supported by TextElement such as FontSize or FontFamily, so that you can apply these text formatting decisions to the enclosed span of text. Run has similar functionality of applying TextElement properties to a range of text, but Run doesn't support mixed content (its Run.Text XAML content property can only contain text, not mixed content and further inlines).
Span supports mixed content if you set the content in XAML. What this means is that you can mix Inline tags such as Run, Bold and so on with XAML text content (plain text), with no restrictions on the order in which tags versus text must appear. All text, whether plain text or as enclosed in an Inline tag, renders in the order that the text is defined in the mixed content. For example, this is legal XAML:
<RichTextBlock>
<Paragraph>
<Span>This is <Bold>mixed content</Bold> with multiple text areas <Italic> and inlines</Italic>.</Span>
</Paragraph>
</RichTextBlock>
When mixed content is parsed from XAML, and the text object model is examined at run time, any text area that came from the plain text generates a Run object at the appropriate reading-order position in the InlineCollection collection class that enables run-time access. That Run element contains the text but otherwise has no properties set.
Note
Placing XAML content whether tags or text directly within a Span element is supported because Span denotes that its Inlines property is the XAML content property. For more info on XAML content properties, see "XAML content properties" section of XAML syntax guide.
Span elements are typically used as elements within an InlineCollection, either as child elements of a Paragraph (becomes part of Paragraph.Inlines) or as the content of another Span (becomes part of Span.Inlines).
Span derived classes
Span is the parent class for several derived classes that define an inline text region with a particular formatting convention:
Hyperlink enables a click behavior that navigates to the NavigateUri. The other Span derived classes can be thought of as class-specific decorations to the text and don't otherwise add interaction.
Constructors
Span() |
Initializes a new instance of the Span class. |
Properties
AccessKey |
Gets or sets the access key for this element. (Inherited from TextElement) |
AccessKeyScopeOwner |
Gets or sets a source element that provides the access key scope for this element, even if it's not in the visual tree of the source element. (Inherited from TextElement) |
AllowFocusOnInteraction |
Gets or sets a value that indicates whether the element automatically gets focus when the user interacts with it. (Inherited from TextElement) |
CharacterSpacing |
Gets or sets the uniform spacing between characters, in units of 1/1000 of an em. (Inherited from TextElement) |
ContentEnd |
Gets a TextPointer that represents the end of the content in the element. (Inherited from TextElement) |
ContentStart |
Gets a TextPointer that represents the start of content in the element. (Inherited from TextElement) |
Dispatcher |
Gets the CoreDispatcher that this object is associated with. The CoreDispatcher represents a facility that can access the DependencyObject on the UI thread even if the code is initiated by a non-UI thread. (Inherited from DependencyObject) |
ElementEnd |
Gets a TextPointer that represents the position just after the end of the element. (Inherited from TextElement) |
ElementStart |
Gets a TextPointer that represents the position just before the start of the element. (Inherited from TextElement) |
ExitDisplayModeOnAccessKeyInvoked |
Gets or sets a value that specifies whether the access key display is dismissed when an access key is invoked. (Inherited from TextElement) |
FontFamily |
Gets or sets the preferred top-level font family for the content of the element. (Inherited from TextElement) |
FontSize |
Gets or sets the font size for the content of the element. (Inherited from TextElement) |
FontStretch |
Gets or sets the glyph width of the font in a family to select. (Inherited from TextElement) |
FontStyle |
Gets or sets the font style for the content in this element. (Inherited from TextElement) |
FontWeight |
Gets or sets the top-level font weight to select from the font family for the content in this element. (Inherited from TextElement) |
Foreground |
Gets or sets the Brush to apply to the content in this element. (Inherited from TextElement) |
Inlines |
Gets an InlineCollection containing the top-level inline elements that include the contents of Span. |
IsAccessKeyScope |
Gets or sets a value that indicates whether an element defines its own access key scope. (Inherited from TextElement) |
IsTextScaleFactorEnabled |
Gets or sets whether automatic text enlargement, to reflect the system text size setting, is enabled. (Inherited from TextElement) |
KeyTipHorizontalOffset |
Gets or sets a value that indicates how far left or right the keytip is placed in relation to the text element. (Inherited from TextElement) |
KeyTipPlacementMode |
Gets or sets a value that indicates where the KeyTip is placed in relation to the text element. (Inherited from TextElement) |
KeyTipVerticalOffset |
Gets or sets a value that indicates how far up or down the keytip is placed in relation to the text element. (Inherited from TextElement) |
Language |
Gets or sets localization/globalization language information that applies to a TextElement. (Inherited from TextElement) |
Name |
Gets or sets a unique identification for the object. Name can only be set from initial parsing of XAML. (Inherited from TextElement) |
TextDecorations |
Gets or sets a value that indicates what decorations are applied to the text. (Inherited from TextElement) |
XamlRoot |
Gets or sets the XamlRoot in which this element is being viewed. (Inherited from TextElement) |
Methods
ClearValue(DependencyProperty) |
Clears the local value of a dependency property. (Inherited from DependencyObject) |
FindName(String) |
Retrieves an object in the object model / runtime object graph by referencing the object's x:Name or Name attribute value. (Inherited from TextElement) |
GetAnimationBaseValue(DependencyProperty) |
Returns any base value established for a dependency property, which would apply in cases where an animation is not active. (Inherited from DependencyObject) |
GetValue(DependencyProperty) |
Returns the current effective value of a dependency property from a DependencyObject. (Inherited from DependencyObject) |
OnDisconnectVisualChildren() |
Override this method to implement how layout and logic should behave when items are removed from a class-specific content or child property. (Inherited from TextElement) |
ReadLocalValue(DependencyProperty) |
Returns the local value of a dependency property, if a local value is set. (Inherited from DependencyObject) |
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback) |
Registers a notification function for listening to changes to a specific DependencyProperty on this DependencyObject instance. (Inherited from DependencyObject) |
SetValue(DependencyProperty, Object) |
Sets the local value of a dependency property on a DependencyObject. (Inherited from DependencyObject) |
UnregisterPropertyChangedCallback(DependencyProperty, Int64) |
Cancels a change notification that was previously registered by calling RegisterPropertyChangedCallback. (Inherited from DependencyObject) |
Events
AccessKeyDisplayDismissed |
Occurs when the access key sequence is complete to notify controls that they should hide access key visuals. (Inherited from TextElement) |
AccessKeyDisplayRequested |
Occurs when the access key sequence is started to notify controls that they should show access key visuals. (Inherited from TextElement) |
AccessKeyInvoked |
Occurs when a user completes an access key sequence to notify the element that the access key action should be invoked. (Inherited from TextElement) |