skip navigation
  • Product Bundles

    DevCraft

    All Telerik .NET tools and Kendo UI JavaScript components in one package. Now enhanced with:

    • NEW: Design Kits for Figma
    • Online Training
    • Document Processing Library
    • Embedded Reporting for web and desktop

    Web

    Kendo UI UI for Angular UI for Vue UI for jQuery KendoReact UI for Blazor UI for ASP.NET Core UI for ASP.NET MVC UI for ASP.NET AJAX

    Mobile

    UI for .NET MAUI

    Document Management

    Telerik Document Processing

    Desktop

    UI for .NET MAUI UI for WinUI UI for WinForms UI for WPF

    Reporting

    Telerik Reporting Telerik Report Server

    Testing & Mocking

    Test Studio Telerik JustMock

    CMS

    Sitefinity

    AI Productivity Tools

    AI Coding Assistants

    UI/UX Tools

    ThemeBuilder Design System Kit Templates and Building Blocks

    Debugging

    Fiddler Fiddler Everywhere Fiddler Classic Fiddler Everywhere Reporter FiddlerCore

    Free Tools

    KendoReact Free VB.NET to C# Converter Testing Framework
    View all products
  • Overview
  • Demos
    • What's New
    • Roadmap
    • Release History
  • Support and Learning

    • Support and Learning Hub
    • First Steps
    • Docs
    • Demos
    • Virtual Classroom
    • Forums
    • Videos
    • Blogs
    • Accessibility
    • Submit a Ticket

    Productivity and Design Tools

    • Visual Studio Extensions
    • Visual Studio Templates
    • Embedded Reporting
  • Pricing
  • Shopping cart
    • Account Overview
    • Your Licenses
    • Downloads
    • Support Center
    • Forum Profile
    • Payment Methods
    • Edit Profile
    • Log out
  • Login
  • Contact Us
  • Try now

Class SpanLayoutBox

Represents a layout box for a span element in the Telerik document model.

Inheritance
System.Object
LayoutElement
LayoutBox
InlineLayoutBox
SpanLayoutBox
FormattingSymbolLayoutBox
Inherited Members
InlineLayoutBox.Remove()
InlineLayoutBox.LineInfo
InlineLayoutBox.LineSegmentInfo
InlineLayoutBox.IsRtl
InlineLayoutBox.AssociatedInline
InlineLayoutBox.IsStartOfLineSegment
LayoutBox.currentY
LayoutBox.AssociatedLayoutBoxProperty
LayoutBox.Node
LayoutBox.GetAssociatedLayoutBox(UIElement)
LayoutBox.SetAssociatedLayoutBox(UIElement, LayoutBox)
LayoutBox.OnElementStructureChanging()
LayoutBox.OnElementStructureChanged()
LayoutBox.CreateChildrenCollection(DocumentStructureCollection)
LayoutBox.InvalidateMeasureUpToTheRoot()
LayoutBox.InvalidateMeasureUpToTheRootStable()
LayoutBox.InvalidateArrangeUpToTheRoot()
LayoutBox.InvalidateLayoutAfterEdit()
LayoutBox.ValidateChild(LayoutBox)
LayoutBox.GetRootDocument()
LayoutBox.CanGrowVerticallyOverride(Single)
LayoutBox.CanGrowVertically(Single)
LayoutBox.GetBoxDesiredGrow()
LayoutBox.CreateNewFragment(LayoutBox)
LayoutBox.InvalidateMeasure()
LayoutBox.IsRemoved
LayoutBox.IsFragment
LayoutBox.AssociatedDocumentElement
LayoutBox.ChildLayoutBoxes
LayoutBox.HasVisualRepresentation
LayoutBox.IsFormattingSymbol
LayoutBox.BoundsChildBoxes
LayoutBox.IsFirstBox
LayoutBox.IsLastBox
LayoutBox.IsFirstChild
LayoutBox.IsLastChild
LayoutBox.IsValidPosition
LayoutBox.Parent
LayoutBox.ChildIndex
LayoutBox.BoundingRectangle
LayoutBox.ElementStructureChanging
LayoutBox.ElementStructureChanged
LayoutElement.EnsureChildrenCreated()
LayoutElement.CreateChildren()
LayoutElement.OnBitStateChanged(DocumentElementStates, Boolean, Boolean)
LayoutElement.SetBitState(DocumentElementStates, Boolean)
LayoutElement.ValidateParent(LayoutElement)
LayoutElement.SetParent(LayoutElement, LayoutElement)
LayoutElement.SetParentCore(LayoutElement)
LayoutElement.IsInValidState(Boolean)
LayoutElement.OnInvalidateMeasure()
LayoutElement.InvalidateMeasure(Boolean)
LayoutElement.InvalidateArrange()
LayoutElement.OnInvalidateArrange()
LayoutElement.InvalidateArrange(Boolean)
LayoutElement.Arrange(RectangleF)
LayoutElement.ArrangeCore(RectangleF)
LayoutElement.ArrangeOverride(SizeF)
LayoutElement.Measure(SizeF)
LayoutElement.MeasureCore(SizeF)
LayoutElement.OnChildDesiredSizeChanged(LayoutElement)
LayoutElement.OnParentChanging()
LayoutElement.OnParentChanged()
LayoutElement.LayoutOffset
LayoutElement.IsTopContainer
LayoutElement.LocalBoundingRectangle
LayoutElement.ControlBoundingRectangle
LayoutElement.ClippedControlBoundingRectangle
LayoutElement.TotalTransform
LayoutElement.Children
LayoutElement.BitState
LayoutElement.DesiredSize
LayoutElement.IsMeasureInProgress
LayoutElement.BypassLayoutPolicies
LayoutElement.MeasureWithoutParentNotification
LayoutElement.Size
LayoutElement.IsArrangeValid
LayoutElement.IsMeasureValid
LayoutElement.TreeLevel
LayoutElement.PreviousArrangeRect
LayoutElement.Alignment
LayoutElement.AutoSize
LayoutElement.Transform
LayoutElement.ParentChanging
LayoutElement.ParentChanged
Namespace: Telerik.Windows.Documents.Layout
Assembly: Telerik.Windows.Controls.RichTextBox.dll

Syntax

public class SpanLayoutBox : InlineLayoutBox, INotifyPropertyChanged

Constructors

SpanLayoutBox(DocumentElement, DocumentStructureCollection)

Declaration
public SpanLayoutBox(DocumentElement parentElement, DocumentStructureCollection collection)
Parameters
DocumentElement parentElement

DocumentStructureCollection collection

SpanLayoutBox(DocumentElement, DocumentStructureCollection, Boolean)

Declaration
public SpanLayoutBox(DocumentElement parentElement, DocumentStructureCollection collection, bool isFragment)
Parameters
DocumentElement parentElement

DocumentStructureCollection collection

System.Boolean isFragment

SpanLayoutBox(DocumentElement, DocumentStructureCollection, String)

Declaration
public SpanLayoutBox(DocumentElement parentElement, DocumentStructureCollection collection, string text)
Parameters
DocumentElement parentElement

DocumentStructureCollection collection

System.String text

Properties

AssociatedSpan

Gets or sets the associated span for the SpanLayoutBox.

Declaration
public Span AssociatedSpan { get; set; }
Property Value
Span

BaselineOffset

Gets the baseline offset of the span layout box, which indicates the distance from the top of the box to its baseline.

Declaration
public override float BaselineOffset { get; }
Property Value
System.Single

Overrides
InlineLayoutBox.BaselineOffset

CanCreateLayoutBoxesFromContent

Declaration
protected override bool CanCreateLayoutBoxesFromContent { get; }
Property Value
System.Boolean

Overrides
LayoutBox.CanCreateLayoutBoxesFromContent

DesiredTextSize

Gets the desired size of the text within the SpanLayoutBox.

Declaration
public SizeF DesiredTextSize { get; }
Property Value
SizeF

HasWidthAtTheEndOfLine

Indicates whether the layout box has a defined width at the end of the line.

Declaration
public override bool HasWidthAtTheEndOfLine { get; }
Property Value
System.Boolean

Overrides
InlineLayoutBox.HasWidthAtTheEndOfLine

IsContainerBox

Indicates whether the span layout box is a container box.

Declaration
public override bool IsContainerBox { get; }
Property Value
System.Boolean

Overrides
InlineLayoutBox.IsContainerBox

IsDecimal

Gets a value indicating whether the current SpanLayoutBox represents a decimal number.

Declaration
public bool IsDecimal { get; set; }
Property Value
System.Boolean

IsParagraphSymbol

Gets a value indicating whether the current layout box represents a paragraph symbol.

Declaration
public bool IsParagraphSymbol { get; }
Property Value
System.Boolean

IsReadonly

Gets or sets a value indicating whether the layout box is in a read-only state.

Declaration
public override bool IsReadonly { get; }
Property Value
System.Boolean

Overrides
InlineLayoutBox.IsReadonly

IsSplittable

Gets or sets a value indicating whether the span layout box can be split.

Declaration
public override bool IsSplittable { get; }
Property Value
System.Boolean

true if the span layout box is splitable; otherwise, false.

Overrides
InlineLayoutBox.IsSplittable

PositionsCountInBox

Gets the number of positions within the layout box.

Declaration
public override int PositionsCountInBox { get; }
Property Value
System.Int32

Overrides
InlineLayoutBox.PositionsCountInBox

Text

Gets or sets the text content of the SpanLayoutBox.

Declaration
public override string Text { get; set; }
Property Value
System.String

Overrides
InlineLayoutBox.Text

Methods

ContainsFormattingSymbol(String)

Determines whether the specified string contains a formatting symbol.

Declaration
public static bool ContainsFormattingSymbol(string text)
Parameters
System.String text

The string to be checked for formatting symbols.

Returns
System.Boolean

true if the string contains a formatting symbol; otherwise, false.

CreateLayoutElement()

Creates a layout element from the current span layout box.

Declaration
public override LayoutElement CreateLayoutElement()
Returns
LayoutElement

A new layout element that represents the span layout box.

Overrides
LayoutBox.CreateLayoutElement()

CreateNewFragment(Single, Boolean)

Creates a new fragment with the specified height and visibility status.

Declaration
public override LayoutBox CreateNewFragment(float availableWidth, bool isFirstBoxInLine)
Parameters
System.Single availableWidth

The available width for the new fragment.

System.Boolean isFirstBoxInLine

A boolean indicating whether this is the first box in the current line

Returns
LayoutBox

A new instance of the LayoutBox class representing the created fragment.

Overrides
InlineLayoutBox.CreateNewFragment(Single, Boolean)

CreateSpanLayoutBox(DocumentElement, DocumentStructureCollection, String)

Creates a new instance of SpanLayoutBox for the specified document element using the provided document structure collection and text.

Declaration
public static SpanLayoutBox CreateSpanLayoutBox(DocumentElement parentElement, DocumentStructureCollection collection, string text)
Parameters
DocumentElement parentElement

The document element for which the span layout box is being created.

DocumentStructureCollection collection

A collection of document structures related to the layout.

System.String text

The text in the current SpanLayoutBox

Returns
SpanLayoutBox

A new instance of SpanLayoutBox representing the layout of the specified document element.

GetPositionHandler()

Gets the position of the layout box.

Declaration
public override PositionHandler GetPositionHandler()
Returns
PositionHandler

The position of the layout box as a PositionHandler object.

Overrides
InlineLayoutBox.GetPositionHandler()

InvalidateTextMeasure()

Invalidates the text measurement for the current SpanLayoutBox, forcing a recalculation of the text layout measurements the next time they are needed.

Declaration
public void InvalidateTextMeasure()

IsWordStart()

Determines whether the current layout box marks the start of a word.

Declaration
public bool IsWordStart()
Returns
System.Boolean

MeasureOverride(SizeF)

Declaration
protected override SizeF MeasureOverride(SizeF availableSize)
Parameters
SizeF availableSize

Returns
SizeF

Overrides
LayoutElement.MeasureOverride(SizeF)

MeasureTextOverride(SubStringPosition)

Declaration
protected virtual BoxMeasurementInfo MeasureTextOverride(SubStringPosition subStringPosition)
Parameters
Telerik.Windows.Documents.Core.TextMeasurer.SubStringPosition subStringPosition

Returns
BoxMeasurementInfo

MergeWithNext(LayoutBox)

Merges the current span layout box with the next layout box if applicable.

Declaration
public override void MergeWithNext(LayoutBox nextSpanBox)
Parameters
LayoutBox nextSpanBox

The layout box to merge with the current span layout box.

Overrides
InlineLayoutBox.MergeWithNext(LayoutBox)

OnAssociateDocumentElementChanged()

Declaration
protected override void OnAssociateDocumentElementChanged()
Overrides
LayoutBox.OnAssociateDocumentElementChanged()

OnPropertyChanged(String)

Declaration
protected virtual void OnPropertyChanged(string propName)
Parameters
System.String propName

SplitSpanByIndex(Int32, Boolean)

Splits the span at the specified index, creating two separate spans.

Declaration
public void SplitSpanByIndex(int splitIndex, bool isBefore)
Parameters
System.Int32 splitIndex

The index at which to split the span.

System.Boolean isBefore

A boolean value indicating whether to take the text before or after the index

ToString()

Returns a string representation of the current instance of the SpanLayoutBox.

Declaration
public override string ToString()
Returns
System.String

A string that represents the current SpanLayoutBox object.

Overrides
LayoutBox.ToString()

Update(String)

Updates the span layout box with the specified string value.

Declaration
public void Update(string text)
Parameters
System.String text

The string value used to update the span layout box.

Events

PropertyChanged

Declaration
public event PropertyChangedEventHandler PropertyChanged
Event Type
System.ComponentModel.PropertyChangedEventHandler

Extension Methods

ExtensionMethods.GetCurrentSectionBox(LayoutBox)
CollectionExtensions.ToEnumerable<T>(T)
EnumerableExtensions.ToEnumerable<T>(T)
Getting Started
  • Install Now
  • Demos
  • SDK Samples Browser
  • Sample Applications
Support Resources
  • Code Library
  • Knowledge Base
  • MVVM Support
  • Videos
  • GitHub SDK Repository
Community
  • Forums
  • Blogs
  • XAML Feedback Portal
  • Document Processing Feedback Portal

Copyright © 2018 Progress Software Corporation and/or its subsidiaries or affiliates.
All Rights Reserved.

Progress, Telerik, and certain product names used herein are trademarks or registered trademarks of Progress Software Corporation and/or one of its subsidiaries or affiliates in the U.S. and/or other countries. See Trademarks for appropriate markings.