UI Layers

RadRichTextBox uses separate layers to render the different parts of a document. This topic describes which layers are used and the parts they are responsible to visualize.

Default Layers

The default layers provide the default visual representation of the elements they support. Table 1 lists all the layers used in RadRichTextBox with information about the part they are responsible for.

Table 1: UI layers in RadRichTextBox

Position Class Layer Name Description
1 PagesUILayer PagesLayer Generates the page area with the size specified in the section properties.
2 HeaderFooterLayer HeaderFooterLayer Responsible to render the header and footer areas of the page.
3 WatermarkUILayer WatermarkLayer Renders the watermarks on a page.
4 BackgroundsUILayer BackgroundsLayer Renders the background of Table, TableCell and Paragraph elements.
5 FloatingBlocksUILayer FloatingBlocksBackLayer Visualizes the floating elements in a document that should be rendered below the other contents.
6 RevisionChangedLinesDecoration RevisionChangedLinesDecoration Adds decorations for the modified inline content when using Track Changes.
7 TableRevisionRangesDecoration TableRevisionRangesDecoration Adds decorations for the modified Table elements when using Track Changes.
8 HighlightingFieldsDecorationUILayer HighlightFieldsDecoration Renders highlight on the fields inside a document when RadRichTextBox.FieldShadingMode is different than Never.
9 HighlightingTextDecorationUILayer HighlightDecoration Visualizes the highlight of a Span, if such is applied.
10 StrikethroughTextDecorationUILayer StrikethroughDecoration Visualizes the strikethrough of a Span, if such is applied.
11 ProofingErrorsDecorationUILayer ProofingErrorsDecoration Shows the marks for misspelled words.
12 UnderlineTextDecorationUILayer UnderlineDecoration Renders the underline of text, if such is applied.
13 DocumentListDecoration DocumentListDecoration Takes care of rendering the bullets and numberings for lists.
14 BordersUILayer BordersDecoration Responsible for rendering the table borders.
15 AnchorFloatingBlockDecorationUILayer FloatingBlockAnchorDecoration Renders the anchor of the floating blocks.
16 FormattingSymbolsUILayer FormattingSymbolsLayer Shows the formatting symbols.
17 TabLeaderUILayer TabLeaderUILayer Generates the UI for the tab leaders.
19 LineDocumentUILayer LinesDocumentLayer Renders the lines of text content.
20 SectionColumnsSeparatorLayer SectionColumnsSeparatorLayer Draws the separator between two section columns.
21 RevisionsToolTipLayer ToolTipLayer Shows a tooltip with information about a specific revision.
22 NotesTooltipLayer NotesTooltipLayer Creates UI for the tooltips of footnotes and endnotes in a document.
23 HyperlinksUILayer HyperlinksLayer Takes care of presenting the hyperlinks.
24 ImagesUILayer ImagesLayer Renders images.
25 UIContainerUILayer UIContainerLayer Takes care for the rendering of UIContainer elements.
26 NotesSeparatorLayer NotesSeparatorLayer Shows the separator line between footnotes and endnotes.
27 FootnotesUILayer FootnotesLayer Renders the footnotes.
28 EndnotesUILayer EndnotesLayer Renders the endnotes.
29 FloatingBlocksUILayer FloatingBlocksFrontLayer Creates the UI for the floating blocks that should be rendered on top of the other content.
30 TableColumnBordersResizeLayer TableColumnBordersResizeLayer Creates the UI that enables the users to resize columns of a table.
31 TableRowBordersResizeLayer TableRowBordersResizeLayer Creates the UI that enables the users to resize rows of a table.
32 CommentsUILayer CommentsLayer Visualizes the comments inside a document.
33 AdornerLayer AdornerLayer Shows the image adorner allowing users to modify an image.
34 ForegroundLayer ForegroundLayer Takes care of applying the correct foreground.
35 SelectionLayer SelectionLayer Visualizes the selection.
36 HeaderFooterOverlayLayer HeaderFooterOverlayLayer Adds an additional UI when the user is editing inside headers/footers. Makes it easier to see which part of the document is edited at the moment.
37 TableMovementUILayer TableMovementLayer Initializes and shows the table adorner. Allows moving and selecting a whole table.

Ordering Layers

The position a layer is added to the collection of layers in the control specifies its stack order. UI layer that is added as the last item in the collection is always rendered in front of all previously added layers. On the counterpart, the first UI layer in the collection visualizes its elements beneath all others.

The default order of the built-in layers corresponds to the specific layer position in Table 1.

Customizing UI Layers

The API of RadRichTextBox enables you to remove an existing layer or create a brand new one to customize the presentation of different parts of the document. These operations can be performed through a custom implementation of the UILayersBuilder class to register the desired remove and/or add operation.

For more details on customizing the visualization of the document elements, check the Customize Presentation through UI Layers help topic.

See Also

In this article