RichTextEditor Class
Definition
A rich text editor control that provides interactive editing capabilities for FlowDocument content.
public class RichTextEditor
Remarks
RichTextEditor is a full-featured text editing control that combines document rendering (TextViewBase) with interactive editing capabilities (text selection, keyboard input, mouse input, etc.).
Implements Avalonia.Controls.Documents.Primitives.ITextViewHost for viewport/scrolling and Avalonia.Controls.Documents.Primitives.ITextEditorHost for editing component abstraction.
Constructors
| Name | Description |
|---|---|
| RichTextEditor | Initializes a new instance of the Avalonia.Controls.RichTextEditor control. |
RichTextEditor Constructor
Initializes a new instance of the Avalonia.Controls.RichTextEditor control.
public RichTextEditor()
Methods
| Name | Description |
|---|---|
| ActivateDocument | Makes document the document the editor edits: one of the body's page bands, or the body itself when null. A band's selection is created the first time the band is entered and kept while the band belongs to the document; the body's selection stays where it was. The caret moves to position when one is given, and the view brings the document's placement into view. Returns false for a document that is neither the body nor one of its bands. |
| AddHandler (2 overloads) | Adds a handler for the specified routed event. Inherited from Interactive. |
| ApplyStyling | Applies styling to the control if the control is initialized and styling is not already applied. Inherited from StyledElement. |
| ApplyTemplate | Creates the visual children of the control, if necessary Inherited from TemplatedControl. |
| Arrange | Arranges the control and its children. Inherited from Layoutable. |
| BeginInit | Inherited from StyledElement. |
| Bind (8 overloads) | Binds a Avalonia.AvaloniaProperty to an Avalonia.Data.BindingBase. Inherited from AvaloniaObject. |
| CheckAccess | Returns a value indicating whether the current thread is the UI thread. Inherited from AvaloniaObject. |
| ClearSelection | Clears the current selection. |
| ClearUndoHistory | Clears the undo and redo history. |
| ClearValue (4 overloads) | Clears a Avalonia.AvaloniaProperty's local value. Inherited from AvaloniaObject. |
| CoerceValue | Coerces the specified Avalonia.AvaloniaProperty. Inherited from AvaloniaObject. |
| EndInit | Inherited from StyledElement. |
| Equals | Compares two objects using reference equality. Inherited from AvaloniaObject. |
| Focus | Focuses the control. Inherited from InputElement. |
| GetBaseValue | Inherited from AvaloniaObject. |
| GetComponent | No summary available. |
| GetFlowDirection | Gets the value of the attached Avalonia.Visual.FlowDirectionProperty on a control. Inherited from Visual. |
| GetHashCode | Gets the hash code for the object. Inherited from AvaloniaObject. |
| GetIsHoldingEnabled | Inherited from InputElement. |
| GetIsHoldWithMouseEnabled | Inherited from InputElement. |
| GetIsTemplateFocusTarget | Gets the value of the IsTemplateFocusTargetProperty attached property on a control. Inherited from TemplatedControl. |
| GetValue (3 overloads) | Gets a Avalonia.AvaloniaProperty value. Inherited from AvaloniaObject. |
| InvalidateArrange | Invalidates the arrangement of the control and queues a new layout pass. Inherited from Layoutable. |
| InvalidateMeasure | Invalidates the measurement of the control and queues a new layout pass. Inherited from Layoutable. |
| InvalidateVisual | Invalidates the visual and queues a repaint. Inherited from Visual. |
| IsAnimating | Checks whether a Avalonia.AvaloniaProperty is animating. Inherited from AvaloniaObject. |
| IsSet | Checks whether a Avalonia.AvaloniaProperty is set on this object. Inherited from AvaloniaObject. |
| Load | Loads a document from a stream. |
| LoadAsync | Loads a document from a stream asynchronously. |
| Measure | Carries out a measure of the control. Inherited from Layoutable. |
| RaiseEvent | Raises a routed event. Inherited from Interactive. |
| Redo | Redoes the most recently undone editing operation. |
| RegisterComponent | Registers a component with this host. |
| RemoveHandler (2 overloads) | Removes a handler for the specified routed event. Inherited from Interactive. |
| Render | Renders the visual to a Avalonia.Media.DrawingContext. Inherited from Visual. |
| Save | Saves the document to a stream. |
| SaveAsync | Saves the document to a stream asynchronously on a background thread. |
| Select | Sets the selection to the specified range. |
| SelectAll | Selects all text in the document. |
| SetCurrentValue (2 overloads) | Sets the value of a dependency property without changing its value source. Inherited from AvaloniaObject. |
| SetFlowDirection | Sets the value of the attached Avalonia.Visual.FlowDirectionProperty on a control. Inherited from Visual. |
| SetIsHoldingEnabled | Inherited from InputElement. |
| SetIsHoldWithMouseEnabled | Inherited from InputElement. |
| SetIsTemplateFocusTarget | Sets the value of the IsTemplateFocusTargetProperty attached property on a control. Inherited from TemplatedControl. |
| SetValue (3 overloads) | Sets a Avalonia.AvaloniaProperty value. Inherited from AvaloniaObject. |
| TryGetResource | Inherited from StyledElement. |
| Undo | Undoes the most recent editing operation. |
| UnregisterComponent | Unregisters a component from this host. |
| UpdateLayout | Executes a layout pass. Inherited from Layoutable. |
| VerifyAccess | Checks that the current thread is the UI thread and throws if not. Inherited from AvaloniaObject. |
ActivateDocument Method
Makes document the document the editor edits: one of the
body's page bands, or the body itself when null. A band's selection is
created the first time the band is entered and kept while the band belongs
to the document; the body's selection stays where it was. The caret moves to
position when one is given, and the view brings the
document's placement into view. Returns false for a document that is neither
the body nor one of its bands.
public bool ActivateDocument(Avalonia.Controls.Documents.FlowDocument document, Avalonia.Controls.Documents.TextModel.TextPointer position)
Parameters
document Avalonia.Controls.Documents.FlowDocument
position Avalonia.Controls.Documents.TextModel.TextPointer
Returns
bool
ClearSelection Method
Clears the current selection.
public void ClearSelection()
ClearUndoHistory Method
Clears the undo and redo history.
public void ClearUndoHistory()
GetComponent Method
public T GetComponent<T>()
Type Parameters
T
Returns
T
Load Method
Loads a document from a stream.
public void Load(System.IO.Stream stream, Avalonia.Controls.Documents.Serialization.IDocumentSerializer serializer)
Parameters
stream System.IO.Stream
The stream to read from.
serializer Avalonia.Controls.Documents.Serialization.IDocumentSerializer
The serializer to use.
Remarks
Parses and builds the document on the calling thread. Prefer Avalonia.Controls.RichTextEditor.LoadAsync(System.IO.Stream,Avalonia.Controls.Documents.Serialization.IDocumentSerializer,System.Threading.CancellationToken) for a large document, which keeps the parse off it.
Exceptions
LoadAsync Method
Loads a document from a stream asynchronously.
public System.Threading.Tasks.Task LoadAsync(System.IO.Stream stream, Avalonia.Controls.Documents.Serialization.IDocumentSerializer serializer, System.Threading.CancellationToken cancellationToken)
Parameters
stream System.IO.Stream
The stream to read from.
serializer Avalonia.Controls.Documents.Serialization.IDocumentSerializer
The serializer to use.
cancellationToken System.Threading.CancellationToken
Cancellation token.
Returns
System.Threading.Tasks.Task
A task that completes when the load is finished.
Remarks
This delegates to Avalonia.Controls.Documents.FlowDocument.LoadAsync(System.IO.Stream,Avalonia.Controls.Documents.Serialization.IDocumentSerializer,System.Threading.CancellationToken).
Exceptions
Redo Method
Redoes the most recently undone editing operation.
public void Redo()
RegisterComponent Method
Registers a component with this host.
public void RegisterComponent(Avalonia.Controls.Documents.Primitives.Components.ITextViewComponent component)
Parameters
component Avalonia.Controls.Documents.Primitives.Components.ITextViewComponent
The component to register.
Remarks
If the host is already in the attached state, the component receives an immediate Avalonia.Controls.Documents.Primitives.Components.ITextViewComponent.OnAttach(Avalonia.Controls.Documents.Primitives.IInteractiveTextHost) callback.
Save Method
Saves the document to a stream.
public void Save(System.IO.Stream stream, Avalonia.Controls.Documents.Serialization.IDocumentSerializer serializer)
Parameters
stream System.IO.Stream
The stream to write to.
serializer Avalonia.Controls.Documents.Serialization.IDocumentSerializer
The serializer to use.
Remarks
Writes on the calling thread. Prefer Avalonia.Controls.RichTextEditor.SaveAsync(System.IO.Stream,Avalonia.Controls.Documents.Serialization.IDocumentSerializer,System.Threading.CancellationToken) for a large document, which keeps the write off it.
Exceptions
SaveAsync Method
Saves the document to a stream asynchronously on a background thread.
public System.Threading.Tasks.Task SaveAsync(System.IO.Stream stream, Avalonia.Controls.Documents.Serialization.IDocumentSerializer serializer, System.Threading.CancellationToken cancellationToken)
Parameters
stream System.IO.Stream
The stream to write to.
serializer Avalonia.Controls.Documents.Serialization.IDocumentSerializer
The serializer to use.
cancellationToken System.Threading.CancellationToken
Cancellation token.
Returns
System.Threading.Tasks.Task
A task that completes when the save is finished.
Remarks
This is a convenience method that delegates to Avalonia.Controls.Documents.FlowDocument.SaveAsync(System.IO.Stream,Avalonia.Controls.Documents.Serialization.IDocumentSerializer,System.Threading.CancellationToken).
Exceptions
Select Method
Sets the selection to the specified range.
public void Select(Avalonia.Controls.Documents.TextModel.TextPointer start, Avalonia.Controls.Documents.TextModel.TextPointer end)
Parameters
start Avalonia.Controls.Documents.TextModel.TextPointer
The start position of the selection.
end Avalonia.Controls.Documents.TextModel.TextPointer
The end position of the selection.
SelectAll Method
Selects all text in the document.
public void SelectAll()
Undo Method
Undoes the most recent editing operation.
public void Undo()
UnregisterComponent Method
Unregisters a component from this host.
public void UnregisterComponent(Avalonia.Controls.Documents.Primitives.Components.ITextViewComponent component)
Parameters
component Avalonia.Controls.Documents.Primitives.Components.ITextViewComponent
The component to unregister.
Remarks
If the component is currently attached, it receives an Avalonia.Controls.Documents.Primitives.Components.ITextViewComponent.OnDetach callback before removal.
Properties
| Name | Description |
|---|---|
| AcceptsReturn | Gets or sets a value indicating whether the editor accepts return key input. |
| AcceptsTab | Gets or sets a value indicating whether the editor accepts tab key input. |
| ActiveDocument | Gets the nested document the caret is in: the page band whose text the selection edits, or null while the selection is in the body. |
| ActualThemeVariant | Gets the UI theme that is currently used by the element, which might be different than the RequestedThemeVariantProperty. Inherited from StyledElement. |
| AdornerLayer | Gets the adorner layer that renders highlights, block adorners, and interactive adorner controls. |
| Background | Gets or sets the brush used to draw the control's background. Inherited from TemplatedControl. |
| BackgroundSizing | Gets or sets how the control's background is drawn relative to the control's border. Inherited from TemplatedControl. |
| BorderBrush | Gets or sets the brush used to draw the control's border. Inherited from TemplatedControl. |
| BorderThickness | Gets or sets the thickness of the control's border. Inherited from TemplatedControl. |
| Bounds | Gets the bounds of the control relative to its parent. Inherited from Visual. |
| CacheMode | Gets or sets the cache mode of the visual. Inherited from Visual. |
| CanRedo | Gets a value indicating whether there are operations that can be redone. |
| CanUndo | Gets a value indicating whether there are operations that can be undone. |
| CaretBrush | Gets or sets the brush used to paint the caret. |
| Classes | Gets or sets the styled element's classes. Inherited from StyledElement. |
| Clip | Gets or sets the geometry clip for this visual. Inherited from Visual. |
| ClipToBounds | Gets or sets a value indicating whether the control should be clipped to its bounds. Inherited from Visual. |
| ContextFlyout | Gets or sets a context flyout to the control Inherited from Control. |
| ContextMenu | Gets or sets a context menu to the control. Inherited from Control. |
| CornerRadius | Gets or sets the radius of the border rounded corners. Inherited from TemplatedControl. |
| Cursor | Gets or sets associated mouse cursor. Inherited from InputElement. |
| DataContext | Gets or sets the control's data context. Inherited from StyledElement. |
| DataTemplates | Gets or sets the data templates for the control. Inherited from Control. |
| DesiredSize | Gets the size that this element computed during the measure pass of the layout process. Inherited from Layoutable. |
| Dispatcher | Returns the Avalonia.AvaloniaObject.Dispatcher that this Avalonia.AvaloniaObject is associated with. Inherited from AvaloniaObject. |
| Document | Gets or sets the FlowDocument to display and edit. |
| Effect | Gets or sets the effect of the control. Inherited from Visual. |
| FlowDirection | Gets or sets the text flow direction. Inherited from Visual. |
| Focusable | Gets or sets a value indicating whether the control can receive focus. Inherited from InputElement. |
| FocusAdorner | Gets or sets the control's focus adorner. Inherited from Control. |
| FontFamily | Gets or sets the font family used to draw the control's text. Inherited from TemplatedControl. |
| FontFeatures | Gets or sets the font features turned on/off. Inherited from TemplatedControl. |
| FontSize | Gets or sets the size of the control's text in points. Inherited from TemplatedControl. |
| FontStretch | Gets or sets the font stretch used to draw the control's text. Inherited from TemplatedControl. |
| FontStyle | Gets or sets the font style used to draw the control's text. Inherited from TemplatedControl. |
| FontWeight | Gets or sets the font weight used to draw the control's text. Inherited from TemplatedControl. |
| Foreground | Gets or sets the brush used to draw the control's text and other foreground elements. Inherited from TemplatedControl. |
| GestureRecognizers | Inherited from InputElement. |
| HasMirrorTransform | Gets or sets a value indicating whether to apply mirror transform on this control. Inherited from Visual. |
| Height | Gets or sets the height of the element. Inherited from Layoutable. |
| HighlightLayers | Gets the collection of highlight layers. |
| HorizontalAlignment | Gets or sets the element's preferred horizontal alignment in its parent. Inherited from Layoutable. |
| IsArrangeValid | Gets a value indicating whether the control's layouts arrange is valid. Inherited from Layoutable. |
| IsEffectivelyEnabled | Gets a value indicating whether this control and all its parents are enabled. Inherited from InputElement. |
| IsEffectivelyVisible | Gets a value indicating whether this control and all its parents are visible. Inherited from Visual. |
| IsEnabled | Gets or sets a value indicating whether the control is enabled for user interaction. Inherited from InputElement. |
| IsFocused | Gets a value indicating whether the control is focused. Inherited from InputElement. |
| IsHitTestVisible | Gets or sets a value indicating whether the control is considered for hit testing. Inherited from InputElement. |
| IsInitialized | Gets a value that indicates whether the element has finished initialization. Inherited from StyledElement. |
| IsKeyboardFocusWithin | Gets a value indicating whether keyboard focus is anywhere within the element or its visual tree child elements. Inherited from InputElement. |
| IsLoaded | Gets a value indicating whether the control is fully constructed in the visual tree and both layout and render are complete. Inherited from Control. |
| IsMeasureValid | Gets a value indicating whether the control's layout measure is valid. Inherited from Layoutable. |
| IsPointerOver | Gets a value indicating whether the pointer is currently over the control. Inherited from InputElement. |
| IsReadOnly | Gets or sets a value indicating whether the editor is read-only. |
| IsTabStop | Gets or sets a value that indicates whether the control is included in tab navigation. Inherited from InputElement. |
| IsVisible | Gets or sets a value indicating whether this control is visible. Inherited from Visual. |
| Item | Inherited from AvaloniaObject. |
| KeyBindings | Inherited from InputElement. |
| LetterSpacing | Gets or sets the letter spacing for the control's text content. Inherited from TemplatedControl. |
| Margin | Gets or sets the margin around the element. Inherited from Layoutable. |
| MaxHeight | Gets or sets the maximum height of the element. Inherited from Layoutable. |
| MaxWidth | Gets or sets the maximum width of the element. Inherited from Layoutable. |
| MinHeight | Gets or sets the minimum height of the element. Inherited from Layoutable. |
| MinWidth | Gets or sets the minimum width of the element. Inherited from Layoutable. |
| Name | Gets or sets the name of the styled element. Inherited from StyledElement. |
| Opacity | Gets or sets the opacity of the control. Inherited from Visual. |
| OpacityMask | Gets or sets the opacity mask of the control. Inherited from Visual. |
| Padding | Gets or sets the padding placed between the border of the control and its content. Inherited from TemplatedControl. |
| PageBandDistance | Gets or sets the distance from the sheet edge to a page band in Avalonia.Controls.DocumentViewMode.PageLayout: the header's top sits this far below the sheet top, the footer's bottom this far above the sheet bottom (Word's header and footer distance). The document owns the value; this property is a handle on it, so setting it writes through and a document carrying its own distance is reflected here when it is attached. |
| PageBandFocusBrush | Gets or sets the brush of the frame drawn around the page band the caret is in. |
| PageBoundsBrush | Gets or sets the brush used to render the background of the page bounds area. |
| PageGap | Gets or sets the vertical gap between page sheets in Avalonia.Controls.DocumentViewMode.PageLayout. The same gap surrounds the sheet stack above the first and below the last page. |
| PageMargins | Gets or sets the page margins used in Avalonia.Controls.DocumentViewMode.PageLayout. When null, the document's page padding is used, falling back to 2 cm on every side. |
| PageSize | Gets or sets the page size used in Avalonia.Controls.DocumentViewMode.PageLayout, in device-independent pixels. When null, the document's fixed page dimensions are used, falling back to A4 per dimension. |
| Parent | Gets the styled element's logical parent. Inherited from StyledElement. |
| RenderTransform | Gets or sets the render transform of the control. Inherited from Visual. |
| RenderTransformOrigin | Gets or sets the transform origin of the control. Inherited from Visual. |
| Resources | Gets or sets the styled element's resource dictionary. Inherited from StyledElement. |
| Selection | Gets the active selection: the body's, or the selection of the page band the caret is in (page layout). Toolbar state and formatting actions follow it. |
| SelectionBrush | Gets or sets the brush used for selection highlighting. |
| SelectionFlyout | Gets or sets the selection mini-bar flyout shown when text is selected. |
| ShowBlockAdorners | Gets or sets whether block adorner decorations are visible. |
| ShowPageBandsInContinuousLayout | Gets or sets whether Avalonia.Controls.DocumentViewMode.Continuous shows the document's running header above the body and its running footer below it, editable in place like the bands on the sheets. Off by default: the continuous view is a draft view, and the band commands switch to Avalonia.Controls.DocumentViewMode.PageLayout to edit a band, as Word switches to print layout. First-page and even-page bands and a section's own bands stay page-layout only, and a page-number field shows its cached result here. |
| ShowPageBounds | Gets or sets whether page boundary indicators are rendered on the underlying Avalonia.Controls.Documents.Primitives.InteractiveTextView. |
| ShowSelectionFlyout | Gets or sets whether the selection mini-bar flyout is shown when text is selected. |
| ShowToolbar | Gets or sets whether the toolbar is visible. |
| StyleKey | Gets the type by which the element is styled. Inherited from StyledElement. |
| Styles | Gets the styles for the styled element. Inherited from StyledElement. |
| TabIndex | Gets or sets a value that determines the order in which elements receive focus when the user navigates through controls by pressing the Tab key. Inherited from InputElement. |
| Tag | Gets or sets a user-defined object attached to the control. Inherited from Control. |
| Template | Gets or sets the template that defines the control's appearance. Inherited from TemplatedControl. |
| TemplatedParent | Gets the styled element whose lookless template this styled element is part of. Inherited from StyledElement. |
| Theme | Gets or sets the theme to be applied to the element. Inherited from StyledElement. |
| Toolbar | Gets or sets the custom toolbar for this editor. |
| Transitions | Gets or sets the property transitions for the control. Inherited from Animatable. |
| UndoLimit | Gets or sets the maximum number of undo operations to retain. |
| UndoManager | Gets the undo manager for this editor. |
| UseLayoutRounding | Gets or sets a value that determines whether the element should be snapped to pixel boundaries at layout time. Inherited from Layoutable. |
| VerticalAlignment | Gets or sets the element's preferred vertical alignment in its parent. Inherited from Layoutable. |
| ViewMode | Gets or sets how the editor lays out the document: Avalonia.Controls.DocumentViewMode.Continuous (the default single column) or Avalonia.Controls.DocumentViewMode.PageLayout (discrete page sheets, Word's print layout). Switching swaps the hosted text view via the :page-layout pseudo-class; the document, selection, and editing stack carry over. |
| Width | Gets or sets the width of the element. Inherited from Layoutable. |
| ZIndex | Gets or sets the Z index of the control. Inherited from Visual. |
AcceptsReturn Property
Gets or sets a value indicating whether the editor accepts return key input.
public bool AcceptsReturn { get; set; }
AcceptsTab Property
Gets or sets a value indicating whether the editor accepts tab key input.
public bool AcceptsTab { get; set; }
ActiveDocument Property
Gets the nested document the caret is in: the page band whose text the selection edits, or null while the selection is in the body.
public Avalonia.Controls.Documents.FlowDocument ActiveDocument { get; set; }
AdornerLayer Property
Gets the adorner layer that renders highlights, block adorners, and interactive adorner controls.
public Avalonia.Controls.Documents.Primitives.Adorners.BlockAdornerLayer AdornerLayer { get; set; }
CanRedo Property
Gets a value indicating whether there are operations that can be redone.
public bool CanRedo { get; set; }
CanUndo Property
Gets a value indicating whether there are operations that can be undone.
public bool CanUndo { get; set; }
CaretBrush Property
Gets or sets the brush used to paint the caret.
public Avalonia.Media.IBrush CaretBrush { get; set; }
Document Property
Gets or sets the FlowDocument to display and edit.
public Avalonia.Controls.Documents.FlowDocument Document { get; set; }
HighlightLayers Property
Gets the collection of highlight layers.
public Avalonia.Controls.Documents.Primitives.Highlighting.HighlightLayerCollection HighlightLayers { get; set; }
Remarks
This collection is created eagerly and is always non-null, so layers can be added at any time — including before the visual template is applied. Layers are rendered by the Avalonia.Controls.Documents.Primitives.Adorners.BlockAdornerLayer once it becomes available.
IsReadOnly Property
Gets or sets a value indicating whether the editor is read-only.
public bool IsReadOnly { get; set; }
PageBandDistance Property
Gets or sets the distance from the sheet edge to a page band in Avalonia.Controls.DocumentViewMode.PageLayout: the header's top sits this far below the sheet top, the footer's bottom this far above the sheet bottom (Word's header and footer distance). The document owns the value; this property is a handle on it, so setting it writes through and a document carrying its own distance is reflected here when it is attached.
public double PageBandDistance { get; set; }
PageBandFocusBrush Property
Gets or sets the brush of the frame drawn around the page band the caret is in.
public Avalonia.Media.IBrush PageBandFocusBrush { get; set; }
PageBoundsBrush Property
Gets or sets the brush used to render the background of the page bounds area.
public Avalonia.Media.IBrush PageBoundsBrush { get; set; }
Remarks
Set this property to customize the appearance of the page bounds, such as changing the background color or applying a pattern. If set to null, the default brush will be used.
PageGap Property
Gets or sets the vertical gap between page sheets in Avalonia.Controls.DocumentViewMode.PageLayout. The same gap surrounds the sheet stack above the first and below the last page.
public double PageGap { get; set; }
PageMargins Property
Gets or sets the page margins used in Avalonia.Controls.DocumentViewMode.PageLayout. When null, the document's page padding is used, falling back to 2 cm on every side.
public Nullable<Avalonia.Thickness> PageMargins { get; set; }
PageSize Property
Gets or sets the page size used in Avalonia.Controls.DocumentViewMode.PageLayout, in device-independent pixels. When null, the document's fixed page dimensions are used, falling back to A4 per dimension.
public Nullable<Avalonia.Size> PageSize { get; set; }
Selection Property
Gets the active selection: the body's, or the selection of the page band the caret is in (page layout). Toolbar state and formatting actions follow it.
public Avalonia.Controls.TextSelection Selection { get; set; }
SelectionBrush Property
Gets or sets the brush used for selection highlighting.
public Avalonia.Media.IBrush SelectionBrush { get; set; }
SelectionFlyout Property
Gets or sets the selection mini-bar flyout shown when text is selected.
public Avalonia.Controls.Documents.Primitives.EditorSelectionFlyout SelectionFlyout { get; set; }
Remarks
Set this property to customize the selection mini-bar layout and actions. If null, no selection flyout is shown.
Use Avalonia.Controls.RichTextEditor.ShowSelectionFlyout to hide the flyout without replacing it.
ShowBlockAdorners Property
Gets or sets whether block adorner decorations are visible.
public bool ShowBlockAdorners { get; set; }
Remarks
Default is true. When true, registered Avalonia.Controls.Documents.Primitives.Adorners.BlockAdorner instances (e.g., dashed table borders) render over matching blocks.
ShowPageBandsInContinuousLayout Property
Gets or sets whether Avalonia.Controls.DocumentViewMode.Continuous shows the document's running header above the body and its running footer below it, editable in place like the bands on the sheets. Off by default: the continuous view is a draft view, and the band commands switch to Avalonia.Controls.DocumentViewMode.PageLayout to edit a band, as Word switches to print layout. First-page and even-page bands and a section's own bands stay page-layout only, and a page-number field shows its cached result here.
public bool ShowPageBandsInContinuousLayout { get; set; }
ShowPageBounds Property
Gets or sets whether page boundary indicators are rendered on the underlying Avalonia.Controls.Documents.Primitives.InteractiveTextView.
public bool ShowPageBounds { get; set; }
ShowSelectionFlyout Property
Gets or sets whether the selection mini-bar flyout is shown when text is selected.
public bool ShowSelectionFlyout { get; set; }
Remarks
Default is true. Set to false to hide the selection flyout.
ShowToolbar Property
Gets or sets whether the toolbar is visible.
public bool ShowToolbar { get; set; }
Remarks
Default is true. Set to false to hide the toolbar.
Toolbar Property
Gets or sets the custom toolbar for this editor.
public Avalonia.Controls.Documents.Primitives.Toolbar.EditorToolbar Toolbar { get; set; }
Remarks
Set this property to customize the toolbar layout and actions. If null, the default toolbar is used.
Use Avalonia.Controls.RichTextEditor.ShowToolbar to hide the toolbar entirely.
UndoLimit Property
Gets or sets the maximum number of undo operations to retain.
public int UndoLimit { get; set; }
Remarks
Default value is 100. Setting this property will update the current Avalonia.Controls.RichTextEditor.UndoManager if one exists.
UndoManager Property
Gets the undo manager for this editor.
public Avalonia.Controls.Documents.Undo.IUndoManager UndoManager { get; set; }
Remarks
The Avalonia.Controls.Documents.Undo.UndoManager is automatically created when a document is attached. Use this property for advanced scenarios such as grouping operations with Avalonia.Controls.Documents.Undo.UndoManager.BeginUndoUnit(string,Nullable{Avalonia.Controls.Documents.Undo.SelectionSnapshot}).
ViewMode Property
Gets or sets how the editor lays out the document:
Avalonia.Controls.DocumentViewMode.Continuous (the default single column) or
Avalonia.Controls.DocumentViewMode.PageLayout (discrete page sheets, Word's print
layout). Switching swaps the hosted text view via the :page-layout
pseudo-class; the document, selection, and editing stack carry over.
public Avalonia.Controls.DocumentViewMode ViewMode { get; set; }
Fields
AcceptsReturnProperty Field
Defines the Avalonia.Controls.RichTextEditor.AcceptsReturn property.
public Avalonia.StyledProperty<bool> AcceptsReturnProperty
AcceptsTabProperty Field
Defines the Avalonia.Controls.RichTextEditor.AcceptsTab property.
public Avalonia.StyledProperty<bool> AcceptsTabProperty
CaretBrushProperty Field
Defines the Avalonia.Controls.RichTextEditor.CaretBrush property.
public Avalonia.StyledProperty<Avalonia.Media.IBrush> CaretBrushProperty
DocumentProperty Field
Defines the Avalonia.Controls.RichTextEditor.Document property.
public Avalonia.StyledProperty<Avalonia.Controls.Documents.FlowDocument> DocumentProperty
IsReadOnlyProperty Field
Defines the Avalonia.Controls.RichTextEditor.IsReadOnly property.
public Avalonia.StyledProperty<bool> IsReadOnlyProperty
PageBandDistanceProperty Field
Defines the Avalonia.Controls.RichTextEditor.PageBandDistance property.
public Avalonia.StyledProperty<double> PageBandDistanceProperty
PageBandFocusBrushProperty Field
Defines the Avalonia.Controls.RichTextEditor.PageBandFocusBrush property.
public Avalonia.StyledProperty<Avalonia.Media.IBrush> PageBandFocusBrushProperty
PageBoundsBrushProperty Field
Defines the Avalonia.Controls.RichTextEditor.PageBoundsBrush property.
public Avalonia.StyledProperty<Avalonia.Media.IBrush> PageBoundsBrushProperty
PageGapProperty Field
Defines the Avalonia.Controls.RichTextEditor.PageGap property.
public Avalonia.StyledProperty<double> PageGapProperty
PageMarginsProperty Field
Defines the Avalonia.Controls.RichTextEditor.PageMargins property.
public Avalonia.StyledProperty<Nullable<Avalonia.Thickness>> PageMarginsProperty
PageSizeProperty Field
Defines the Avalonia.Controls.RichTextEditor.PageSize property.
public Avalonia.StyledProperty<Nullable<Avalonia.Size>> PageSizeProperty
PartScrollViewer Field
The name of the template part holding the scroll viewer around the text view.
public string PartScrollViewer
PartTextView Field
The name of the template part holding the text view.
public string PartTextView
SelectionBrushProperty Field
Defines the Avalonia.Controls.RichTextEditor.SelectionBrush property.
public Avalonia.StyledProperty<Avalonia.Media.IBrush> SelectionBrushProperty
SelectionFlyoutProperty Field
Defines the Avalonia.Controls.RichTextEditor.SelectionFlyout property.
public Avalonia.StyledProperty<Avalonia.Controls.Documents.Primitives.EditorSelectionFlyout> SelectionFlyoutProperty
ShowBlockAdornersProperty Field
Defines the Avalonia.Controls.RichTextEditor.ShowBlockAdorners property.
public Avalonia.StyledProperty<bool> ShowBlockAdornersProperty
ShowPageBandsInContinuousLayoutProperty Field
Defines the Avalonia.Controls.RichTextEditor.ShowPageBandsInContinuousLayout property.
public Avalonia.StyledProperty<bool> ShowPageBandsInContinuousLayoutProperty
ShowPageBoundsProperty Field
Defines the Avalonia.Controls.RichTextEditor.ShowPageBounds property.
public Avalonia.StyledProperty<bool> ShowPageBoundsProperty
ShowSelectionFlyoutProperty Field
Defines the Avalonia.Controls.RichTextEditor.ShowSelectionFlyout property.
public Avalonia.StyledProperty<bool> ShowSelectionFlyoutProperty
ShowToolbarProperty Field
Defines the Avalonia.Controls.RichTextEditor.ShowToolbar property.
public Avalonia.StyledProperty<bool> ShowToolbarProperty
ToolbarProperty Field
Defines the Avalonia.Controls.RichTextEditor.Toolbar property.
public Avalonia.StyledProperty<Avalonia.Controls.Documents.Primitives.Toolbar.EditorToolbar> ToolbarProperty
UndoLimitProperty Field
Defines the Avalonia.Controls.RichTextEditor.UndoLimit property.
public Avalonia.StyledProperty<int> UndoLimitProperty
ViewModeProperty Field
Defines the Avalonia.Controls.RichTextEditor.ViewMode property.
public Avalonia.StyledProperty<Avalonia.Controls.DocumentViewMode> ViewModeProperty
Events
| Name | Description |
|---|---|
| ActiveDocumentChanged | Occurs when Avalonia.Controls.RichTextEditor.ActiveDocument changes: the caret entered a page band or returned to the body. |
| ActualThemeVariantChanged | Raised when the theme variant is changed on the element or an ancestor of the element. Inherited from StyledElement. |
| AttachedToLogicalTree | Raised when the styled element is attached to a rooted logical tree. Inherited from StyledElement. |
| AttachedToVisualTree | Raised when the control is attached to a rooted visual tree. Inherited from Visual. |
| ContentChanged | Occurs when the document content changes. |
| ContextCanceled | Occurs when the context input gesture continues into another gesture, to notify the element that the context flyout should not be opened. Inherited from InputElement. |
| ContextRequested | Occurs when the user has completed a context input gesture, such as a right-click. Inherited from InputElement. |
| DataContextChanged | Occurs when the Avalonia.StyledElement.DataContext property changes. Inherited from StyledElement. |
| DetachedFromLogicalTree | Raised when the styled element is detached from a rooted logical tree. Inherited from StyledElement. |
| DetachedFromVisualTree | Raised when the control is detached from a rooted visual tree. Inherited from Visual. |
| DocumentChanged | Occurs when the document is replaced. |
| DoubleTapped | Occurs when the user briefly contacts and releases twice on a single point, without significant movement. Inherited from InputElement. |
| EffectiveViewportChanged | Occurs when the element's effective viewport changes. Inherited from Layoutable. |
| GettingFocus | Occurs before the control receives focus. Inherited from InputElement. |
| GotFocus | Occurs when the control receives focus. Inherited from InputElement. |
| Holding | Occurs when the user makes a single contact, then maintains contact beyond a given time threshold without releasing or making another contact. Inherited from InputElement. |
| Initialized | Occurs when the styled element has finished initialization. Inherited from StyledElement. |
| IsReadOnlyChanged | Occurs when the Avalonia.Controls.RichTextEditor.IsReadOnly property changes. |
| KeyDown | Occurs when a key is pressed while the control has focus. Inherited from InputElement. |
| KeyUp | Occurs when a key is released while the control has focus. Inherited from InputElement. |
| LayoutUpdated | Occurs when a layout pass completes for the control. Inherited from Layoutable. |
| Loaded | Occurs when the control has been fully constructed in the visual tree and both layout and render are complete. Inherited from Control. |
| LosingFocus | Occurs before the control loses focus. Inherited from InputElement. |
| LostFocus | Occurs when the control loses focus. Inherited from InputElement. |
| Pinch | Occurs when the user moves two contact points closer together. Inherited from InputElement. |
| PinchEnded | Occurs when the user releases both contact points used in a pinch gesture. Inherited from InputElement. |
| PointerCaptureLost | Occurs when the control or its child control loses the pointer capture for any reason, event will not be triggered for a parent control if capture was transferred to another child of that parent control. Inherited from InputElement. |
| PointerEntered | Occurs when the pointer enters the control. Inherited from InputElement. |
| PointerExited | Occurs when the pointer leaves the control. Inherited from InputElement. |
| PointerMoved | Occurs when the pointer moves over the control. Inherited from InputElement. |
| PointerPressed | Occurs when the pointer is pressed over the control. Inherited from InputElement. |
| PointerReleased | Occurs when the pointer is released over the control. Inherited from InputElement. |
| PointerTouchPadGestureMagnify | Occurs when the user moves two contact points away from each other on a touchpad. Inherited from InputElement. |
| PointerTouchPadGestureRotate | Occurs when the user places two contact points and moves them in a circular motion on a touchpad. Inherited from InputElement. |
| PointerTouchPadGestureSwipe | Occurs when the user performs a rapid dragging motion in a single direction on a touchpad. Inherited from InputElement. |
| PointerWheelChanged | Occurs when the mouse is scrolled over the control. Inherited from InputElement. |
| PropertyChanged | Raised when a Avalonia.AvaloniaProperty value changes on this object. Inherited from AvaloniaObject. |
| PullGesture | Occurs when the user drags from the edge of a control. Inherited from InputElement. |
| PullGestureEnded | Occurs when the user releases the pointer after a pull gesture. Inherited from InputElement. |
| ResourcesChanged | Occurs when a resource in this styled element or a parent styled element has changed. Inherited from StyledElement. |
| RightTapped | Occurs when the user briefly contacts and releases a single point, without significant movement, using a mechanism on the input device recognized as a right button or equivalent. Inherited from InputElement. |
| ScrollGesture | Occurs when the user continuously moves the pointer in the same direction within the control’s boundaries. Inherited from InputElement. |
| ScrollGestureEnded | Occurs when a scroll gesture has fully stopped, taking into account any inertial movement that continues the scroll after the user has released the pointer. Inherited from InputElement. |
| ScrollGestureInertiaStarting | Occurs within a scroll gesture, when the user releases the pointer, and scrolling continues by transitioning to momentum-based gliding movement. Inherited from InputElement. |
| SelectionChanged | Occurs when the selection changes. |
| SizeChanged | Occurs when the bounds (actual size) of the control have changed. Inherited from Control. |
| SwipeGesture | Occurs when the user rapidly drags the pointer in a single direction across the control. Inherited from InputElement. |
| SwipeGestureEnded | Occurs when a swipe gesture ends on the control. Inherited from InputElement. |
| Tapped | Occurs when the user briefly contacts and releases a single point, without significant movement. Inherited from InputElement. |
| TemplateApplied | Raised when the control's template is applied. Inherited from TemplatedControl. |
| TextInput | Occurs when a user typed some text while the control has focus. Inherited from InputElement. |
| TextInputMethodClientRequested | Occurs when an input element gains input focus and input method is looking for the corresponding client Inherited from InputElement. |
| Unloaded | Occurs when the control is removed from the visual tree. Inherited from Control. |
ActiveDocumentChanged Event
Occurs when Avalonia.Controls.RichTextEditor.ActiveDocument changes: the caret entered a page band or returned to the body.
public event EventHandler ActiveDocumentChanged
ContentChanged Event
Occurs when the document content changes.
public event EventHandler ContentChanged
Remarks
This event fires once per logical editing operation, not for each individual character. Batch operations trigger a single event.
The event is only raised when the document was actually modified; no-op change blocks (opened without edits) are suppressed.
DocumentChanged Event
Occurs when the document is replaced.
public event EventHandler DocumentChanged
Remarks
This event fires when the Avalonia.Controls.RichTextEditor.Document property changes.
IsReadOnlyChanged Event
Occurs when the Avalonia.Controls.RichTextEditor.IsReadOnly property changes.
public event EventHandler IsReadOnlyChanged
SelectionChanged Event
Occurs when the selection changes.
public event EventHandler SelectionChanged
Remarks
This event fires when the caret moves or the selection extent changes.